Docker Supervisor-php fpm导致502坏网关

Docker Supervisor-php fpm导致502坏网关,docker,nginx,Docker,Nginx,我有一个基于php和nginx图像的web应用程序。。。在我在PHP配置下设置命令之前,一切都很正常: 命令:/usr/bin/supervisord-c/symfony/supervisord.conf docker-compose.yml version: '2' services: php: build: docker/php tty: true volumes: - '.:/symfony'

我有一个基于php和nginx图像的web应用程序。。。在我在PHP配置下设置命令之前,一切都很正常:
命令:/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
这是我的default.conf

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日志显示:

nginx|u 1 | 2018/10/02 00:42:36[错误]11#11:1 connect()失败 (111:连接被拒绝)连接到上游时,客户端: 172.23.0.1,服务器:~,请求:“GET/HTTP/1.1”,上游:fastcgi://172.23.0.2:9000,主机:“127.0.0.1”

正如我们所看到的,nginx报告了一个502坏网关错误。如果我删除最后一行CMD,一切正常。如果我删除该行并通过docker compose exec php bash访问,然后手动启动该命令,则所有操作都会正常进行。


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

好的,我找到了解决方案,这是主管的问题。因为每次启动服务主管时,
php fpm服务
都会自动停止,这就是为什么它应该添加一个配置来重新启动
php fpm
,但这次是从主管配置开始的

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

通过解释你的答案,做得很好。我希望这不会影响php fpm的性能。