首页 > 解决方案 > PHP在入口点的nginx之后没有启动

问题描述

我试图让 PHP-fpm 在 nginx 运行后运行,但是当我尝试使用我的代码这样做时,nginx 运行良好,但 php 没有在 docker 中启动,我将不得不手动启动它。

入口点.sh

#!/usr/bin/env sh
set -e
nginx -g 'daemon off;'
service php7.4-fpm start

这是在运行之后ENTRYPOINT ["sh","/var/www/html/entrypoint.sh"]

任何帮助表示赞赏,非常感谢

标签: phpdockernginxdockerfile

解决方案


nginx -g 'daemon off;'会让 nginx 留在前台,以便 Docker 可以正确跟踪进程。因为它永远不会退出,所以你service php7.4-fpm start永远没有机会运行。

作为修复,您可以交换 2 行:

#!/usr/bin/env sh
set -e
service php7.4-fpm start
nginx -g 'daemon off;'

推荐阅读