Docker、Nginx和PHP7:错误111连接到上游时拒绝连接

Docker、Nginx和PHP7:错误111连接到上游时拒绝连接,php,nginx,docker,docker-compose,nginx-location,Php,Nginx,Docker,Docker Compose,Nginx Location,我运行了一个NGINX-PHP7-COMPOSER映像,该映像运行得很好,但在使用Slim框架时,我不得不更改NGINX的默认配置,以使URL重写工作正常 现在它在日志中显示此错误: 2017-01-21 14:38:34357信息成功:php-fpm7进入运行状态,进程已延迟超过1秒(startsecs) 2017-01-21 14:38:34359信息成功:nginx进入运行状态,进程已停止运行超过1秒(startsecs) 2017/01/21 14:38:37[错误]15#15:*1连接

我运行了一个NGINX-PHP7-COMPOSER映像,该映像运行得很好,但在使用Slim框架时,我不得不更改NGINX的默认配置,以使URL重写工作正常

现在它在日志中显示此错误:

2017-01-21 14:38:34357信息成功:php-fpm7进入运行状态,进程已延迟超过1秒(startsecs)

2017-01-21 14:38:34359信息成功:nginx进入运行状态,进程已停止运行超过1秒(startsecs)

2017/01/21 14:38:37[错误]15#15:*1连接到上游时失败(111:连接被拒绝),客户端:172.18.0.1,服务器:auth api,请求:“GET/hello HTTP/1.1”,上游:fastcgi://172.18.0.6:9000,主机:“本地主机:9100”

172.18.0.1---[21/Jan/2017:14:38:37+0000]“GET/hello HTTP/1.1”502537“-”Mozilla/5.0(麦金塔;英特尔Mac OS X 10_12_2)AppleWebKit/537.36(KHTML,像Gecko)Chrome/55.0.2883.95 Safari/537.36”

加载了我装载的配置文件(我用nginx-T检查了bash):

我的Dockerfile(仅是我从存储库加载的图像):

还有我的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"

您知道出了什么问题吗?

那么,您是否确实检查了服务器172.18.0.6是否在端口9000/tcp上响应?该主机是否有任何防火墙规则禁止客户端172.18.0.1连接到端口9000/tcp?您是否确实尝试使用常见的疑难解答工具(如
telnet
)从该客户端计算机连接到该服务器?您是否尝试在服务器上运行
tcpdump
,以监视客户端的请求是否真正到达服务器?顺便问一下,这个问题与编程有何关系?也许你会更幸运地问一下。
FROM richarvey/nginx-php-fpm
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"