docker - 为 centos 8 容器设置 php-fpm
问题描述
FROM centos:8
RUN yum -y update && \
yum -y install php-fpm httpd
COPY . /var/www/html
CMD ["httpd", "-D", "FOREGROUND"]
我成功地创建了一个基于 centos:7 的简单容器映像,它可以很好地从文档根目录提供 php 文件。但是,当我将 base 更改为 centos:8 时,不提供 php 文件。503 Apache 页面显示“由于维护停机或容量问题,服务器暂时无法为您的请求提供服务。请稍后再试。” 当我查看正在运行的容器内的 /etc/httpd/logs/error_log 时,我看到:
[Wed Jun 10 10:57:33.236099 2020] [proxy:error] [pid 7:tid 139731249620736] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed
[Wed Jun 10 10:57:33.237322 2020] [proxy_fcgi:error] [pid 7:tid 139731249620736] [client 172.17.0.1:46224] AH01079: failed to make connection to backend: httpd-UDS
[Wed Jun 10 10:57:34.183056 2020] [proxy:error] [pid 7:tid 139731224442624] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed
[Wed Jun 10 10:57:34.183132 2020] [proxy_fcgi:error] [pid 7:tid 139731224442624] [client 172.17.0.1:46228] AH01079: failed to make connection to backend: httpd-UDS
试图通过在容器内创建 /run/php-fpm 目录来进行测试,但错误仍然存在。
我真的希望这可以解决,而无需将sed
某些内容放入容器的 php-fpm 或 httpd 配置文件中。
解决方案
推荐阅读
- powershell - 使用 PowerShell 连接到 Mysql 时出现以下错误
- algorithm - 将 IP 地址映射到城市
- c# - Apache Ignite:客户端和服务器配置
- rest - REST API 托管在 localhost 的 85 端口上。如何在 Angular 12 中使用它们
- sharepoint - 从 SharePoint 2013 迁移到 2019
- php - 如何在 Laravel 7 中导入具有表关系的 Excel?
- angular - 在数组上设置值,它不会更新子组件 - Angular
- python - 使用 str 输入倒计时到工作日的简单 python 输入 while 循环
- qt - 如何在 Qt 中更改速度或灵敏度鼠标光标
- mysql - 在 sequelize 中用数组创建一个新数据