dongyan1491 2018-11-14 13:38
浏览 55

带有dockerized PHP-FPM的502 Bad Gateway

I'm trying to replace my PHP-FPM installation with a docker container. I can build a container and start the FPM service (127.0.0.1:9000).

However, I get a Bad Gateway (502) error when I enter the connection in nginx. What could be the reason?

Dockerfile

FROM alpine:latest

RUN apk --update --no-cache add \
        php7 \
        php7-bcmath \
        php7-dom \
        php7-ctype \
        php7-simplexml \
        php7-session \
        php7-soap \
        php7-tokenizer \
        php7-xml \
        php7-xmlreader \
        php7-xmlwriter \
        php7-zip \
    && rm -rf /var/cache/apk/*

#COPY php.ini /etc/php7/conf.d/50-setting.ini
COPY php-fpm.conf /etc/php7/php-fpm.conf

EXPOSE 9000

CMD ["php-fpm7", "-F"]

php-fpm.conf

[global]
error_log = /dev/stderr

[default]
listen = 127.0.0.1:9000
pm = dynamic
pm.max_children = 10
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 4
pm.max_requests = 400

Building and running

docker build -t php-fpm .
docker run --user="$(id -u www-data)" --name=php-fpm --rm -it -p 127.0.0.1:9000:9000 php-fpm:latest

[14-Nov-2018 13:35:23] NOTICE: fpm is running, pid 1
[14-Nov-2018 13:35:23] NOTICE: ready to handle connections

NGINX PHP Settings

include /etc/nginx/fastcgi_params;
fastcgi_intercept_errors on;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
fastcgi_param  PATH_INFO        $fastcgi_path_info;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 ubuntu虚拟机打包apk错误
    • ¥199 rust编程架构设计的方案 有偿
    • ¥15 回答4f系统的像差计算
    • ¥15 java如何提取出pdf里的文字?
    • ¥100 求三轴之间相互配合画圆以及直线的算法
    • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
    • ¥15 名为“Product”的列已属于此 DataTable
    • ¥15 安卓adb backup备份应用数据失败
    • ¥15 eclipse运行项目时遇到的问题
    • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发