![FROM php:7.4-fpm-alpine app.dockerfile 在添加 sh 文件作为入口点运行时导致 fastcgi 错误](https://linux22.com/image/793250/FROM%20php%3A7.4-fpm-alpine%20app.dockerfile%20%E5%9C%A8%E6%B7%BB%E5%8A%A0%20sh%20%E6%96%87%E4%BB%B6%E4%BD%9C%E4%B8%BA%E5%85%A5%E5%8F%A3%E7%82%B9%E8%BF%90%E8%A1%8C%E6%97%B6%E5%AF%BC%E8%87%B4%20fastcgi%20%E9%94%99%E8%AF%AF.png)
我正在使用 AWS ECS Faragate 生成 Docker 容器并将其部署到任务中。
我正在使用来自 php:7.4-fpm-alpine 的 docker 镜像作为我的应用程序容器。
我一直在研究一种针对应用程序容器的 cron 类型解决方案的解决方法。此解决方案运行 php yii2 命令,然后在 while 循环中休眠 1 分钟。
应用程序容器现在导致以下错误消息,这不会导致任务定义持续存在,并不断重新启动,这是我从应用程序容器收到的错误:
[error] 22#22: *135 connect() failed (111: Connection refused) while connecting to upstream, client: 10.0.19.236, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "10.0.2.163"
因此,为了尝试解决此错误,我将 fastcgi_pass 更新为 app:9000,但从应用程序容器中收到以下错误:
[emerg] 7#7: host not found in upstream "app" in /etc/nginx/conf.d/nginx.conf:35
我已附上在此过程中我所做的代码更改。
有人能指出我做错了什么吗?
我读到过,也许我需要在不同于主线程的线程上创建 bash 脚本?
提前致谢。