代码之家  ›  专栏  ›  技术社区  ›  famas23

Supervisor-php fpm导致502坏网关

  •  0
  • famas23  · 技术社区  · 6 年前

    我有一个基于php和nginx图像的web应用程序。。。在PHP配置下设置命令之前,一切都很正常: command: /usr/bin/supervisord -c /symfony/supervisord.conf

    docker-compose.yml公司

    version: '2'
    
    services:
        php:
            build: docker/php
            tty: true
            volumes:
                - '.:/symfony'
            command: /usr/bin/supervisord -c /symfony/supervisord.conf
    
        nginx:
             image: nginx:1.11
             tty: true
             volumes:
                 - './public/:/symfony'
                 - './docker/nginx/default.conf:/etc/nginx/conf.d/default.conf'
             ports:
                 - '80:80'
             links:
                 - php
    

    server {
     server_name ~.*;
    
     location / {
         root /symfony;
    
         try_files $uri /index.php$is_args$args;
     }
    
     location ~ ^/index\.php(/|$) {
         client_max_body_size 50m;
    
         fastcgi_pass php:9000;
         include fastcgi_params;
         fastcgi_param SCRIPT_FILENAME /symfony/public/index.php;
     }
    
     error_log /var/log/nginx/error.log;
     access_log /var/log/nginx/access.log;
    }
    

    这是我的上司

    [unix_http_server]
    file=/tmp/supervisor.sock
    
    [supervisord]
    logfile=/tmp/supervisord.log
    pidfile=/var/run/supervisord.pid
    nodaemon=true
    

    Nginx日志显示:

    1 connect()失败 (111:连接被拒绝)连接到上游时,客户端: 172.23.0.1,服务器:~。

    如我们所见,nginx报告了一个502坏网关错误。如果我删除最后一行CMD,一切正常。如果我移开线路通过 docker-compose exec php bash

    知道为什么添加这个命令会导致502坏网关吗??

    1 回复  |  直到 6 年前
        1
  •  6
  •   famas23    6 年前

    好的,我找到了一个解决办法,那是主管的问题。因为每次我们推出服务主管 php-fpm service 自动停止,这就是为什么它应该添加一个配置来重新启动 php-fpm 但这次是从管理者的配置。

    [program:php-fpm]
    command = /usr/local/sbin/php-fpm
    autostart=true
    autorestart=true