Docker、Nginx 和 PHP7:連接到上游時錯誤 111 連線被拒絕

Docker、Nginx 和 PHP7:連接到上游時錯誤 111 連線被拒絕

我運行了一個運行良好的 NGINX-PHP7-COMPOSER 映像,但是當使用 Slim Framework 時,我必須更改 Nginx 的預設配置才能使 URL 重寫工作。

現在它在日誌中顯示此錯誤:

2017-01-21 14:38:34,357 INFO 成功:php-fpm7 進入 RUNNING 狀態,進程已停留超過 1 秒(startsecs)

2017-01-21 14:38:34,359 INFO 成功: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/Jan/2017:14:38:37 +0000]“GET /hello HTTP/1.1”502 537“-”“Mozilla/5.0(Macintosh;Intel Mac OS X 10_12_2)AppleWebKit6 KHTML,如Gecko)Chrome/55.0.2883.95 Safari/537.36"

我安裝的設定檔已載入(我使用 nginx -T 檢查了 bash):

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"

我用telnet ping了IP...

遠端登入平

您知道出了什麼問題嗎?

相關內容