本来是想把 php-fpm 的配置文件独立出来,这样修改起来就方便,想当然的认为把 www.conf 配置文件挂载出来就好了,docker-compose.yml 中 PHP 容器部分内容如下:
volumes:
- ./html:/var/www/html
- ./php/log:/var/log/php-fpm
- ./php/conf.d/php.ini:/usr/local/etc/php/conf.d/php.ini
- ./php/php-fpm.d/www.conf:/usr/local/etc/php-fpm.d/www.conf
重新启动后,nginx 就链接不上 php-fpm 了,转发内容失败。如果不挂载配置文件,进入 php 容器内部改 www.conf 文件也可以达到同样的效果,可是不能复用呀,难道就这么结束了?
我们发现 /usr/local/etc/php-fpm.d 目录下有三个配置文件:www.conf,docker.conf,zz-docker.conf,其中zz-docker.conf 里面有关于 www 的相关配置,这个应该是覆盖配置特有的文件,调整挂载文件如下:
volumes:
- ./html:/var/www/html
- ./php/log:/var/log/php-fpm
- ./php/conf.d/php.ini:/usr/local/etc/php/conf.d/php.ini
- ./php/php-fpm.d/zz-docker.conf:/usr/local/etc/php-fpm.d/zz-docker.conf
把想修改的内容配置在 zz-docker.conf 文件中, 样例内容如下:
[global]
daemonize = no
[www]
listen = 9000
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 10
pm.max_spare_servers = 30
pm.max_requests = 500
重启容器,修改内容已生效,运行成功!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。