【问题标题】:Nginx can't talk to PHP-fpm in DockerNginx 无法与 Docker 中的 PHP-fpm 对话
【发布时间】:2015-12-18 12:28:41
【问题描述】:

我正在尝试创建一个 docker 环境来开发我们的 PHP 应用程序。我正在使用 Docker Compose 来配置容器。

到目前为止,一切进展顺利,但我无法让 nginx 与 php-fpm 对话。

2015/12/17 15:49:47 [error] 9#9: *5 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.99.1, server: , request: "GET /favicon.ico HTTP/1.1", upstream: "fastcgi://172.17.0.9:9000", host: "mysite.docker.local:676"

这是我的 docker-compose.yml 文件的相关部分:

app:
    image: yappabe/data
    volumes:
        - .:/var/www
        - /vendor
        - ./logs/nginx:/var/log/nginx
    tty: true

nginx:
    image: yappabe/nginx
    ports:
        - 676:80
    links:
        - php
    volumes_from:
        - app
    environment:
        DOCUMENT_ROOT: /var/www/public
        INDEX_FILE: index.php
        PHP_FPM_SOCKET: php:9000

php:
    image: yappabe/php:5.6
    volumes_from:
        - app
    links:
        - mysql
        - mailcatcher

【问题讨论】:

    标签: php nginx docker docker-compose


    【解决方案1】:

    您似乎从this 网页获得了此配置,所以我尝试了您的设置的子集。

    对您的文件进行精简测试,对我来说效果很好。

    app:
        image: yappabe/data
        tty: true
    
    nginx:
        image: yappabe/nginx
        ports:
            - 676:80
        links:
            - php
        volumes_from:
            - app
        environment:
            DOCUMENT_ROOT: /var/www/app/web
            INDEX_FILE: index.php
            PHP_FPM_SOCKET: php:9000
    
    php:
        image: yappabe/php
        volumes_from:
            - app
    

    【讨论】:

    • 谢谢。我仍然有同样的问题。当我尝试加载 php 脚本时,我收到 502 HTTP 响应。
    • 您可能应该从一个工作配置开始,然后逐步修改它,而不是使用一个损坏的配置而不知道从哪里开始。 502 可能意味着您的 nginx 配置不正确,可能。
    猜你喜欢
    • 2022-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-18
    • 1970-01-01
    • 2018-08-16
    相关资源
    最近更新 更多