
Я запускаю образ NGINX-PHP7-COMPOSER, который работает хорошо, но при использовании Slim Framework мне пришлось изменить конфигурацию Nginx по умолчанию, чтобы заработала перезапись URL.
И теперь в журналах отображается следующая ошибка:
2017-01-21 14:38:34,357 ИНФОРМАЦИЯ успешно: php-fpm7 перешел в состояние RUNNING, процесс оставался активным более 1 секунды (startsecs)
2017-01-21 14:38:34,359 ИНФОРМАЦИЯ успешно: nginx перешел в состояние RUNNING, процесс оставался активным более 1 секунды (startsecs)
2017/01/21 14:38:37 [ошибка] 15#15: *1 connect() не удалось (111: соединение отклонено) при подключении к восходящему потоку, клиент: 172.18.0.1, сервер: auth-api, запрос: "GET /hello HTTP/1.1", восходящий поток: "fastcgi://172.18.0.6:9000", хост: "localhost:9100"
172.18.0.1 - - [21/янв./2017:14:38:37 +0000] "GET /hello HTTP/1.1" 502 537 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/55.0.2883.95 Safari/537.36"
Загружен смонтированный мной файл конфигурации (я проверил bash с помощью nginx -T):
server {
listen 80;
server_name auth-api;
index index.php;
root /var/www/html;
location / {
try_files $uri /index.php$is_args$args;
}
location ~ \.php {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_index index.php;
fastcgi_pass auth-api:9000;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
Мой Dockerfile (просто образ, который я загружаю из репозитория):
FROM richarvey/nginx-php-fpm
И мой docker-compose.yml:
version: '2'
services:
#############
## MARIADB ##
#############
mariadb:
image: mariadb
restart: always
volumes:
- "./log/mariadb:/var/log/mysql:rw"
- "./data/mariadb:/var/lib/mysql:rw"
environment:
- "MYSQL_ROOT_PASSWORD=pass"
ports:
- "3306:3306"
##############
## FRONTEND ##
##############
frontend:
image: skiychan/nginx-php7:latest
volumes:
- ./services/frontend/src:/data/www
links:
- mariadb:mysql
ports:
- "9001:80"
##############
## AUTH API ##
##############
auth-api:
build: ./services/api/auth/
volumes:
- ./services/api/auth/code/:/var/www/html
- ./services/api/auth/:/etc/nginx/sites-available/
links:
- mariadb:mysql
ports:
- "9100:80"
- "9000:9000"
Я пропинговал IP с помощью telnet...
Есть ли у вас какие-либо соображения о том, что происходит не так?