567
1
开发过程中 需要自己构建php镜像 关键PHP中很多时候的都需要用队列 因为队列的不稳定 所以要用Supervisor守护进程 我试着在 dockerfile 中添加 CMD [“/usr/bin/supervisord”, “-n”, “-c”, “/etc/supervisor/supervisord.conf”] 发现没有启动 Supervisor 一步步的查找 终于发现了
构建的容器自动添加了 entrypoint 和command 这个将 dockerfile 中的cmd给替换了 我将 entrypoint 和command 删除后 容器 Supervisor 启动正常 但是 php不正常了 试着将 2个命令合并到一条 试过多次也失败了
好像 docker-php-entrypoint php-fpm 最终 执行的 exec php-fpm 和我期望的/bin/bash 执行Supervisor 不符合 现在是实在想不出什么办法了 当然 写个 XX.sh文件 去执行2个命令的方式 还没有测试 我现在测试下 期望大神指点一下 一个开发初搞运维 挺费事
567
5
我想了下 可不可以做个容器启动的钩子 调用计划任务来实现 计划任务出一个 容器启动时候执行的shell选项 启动的时候自动调用 shel
王贺
6
我们后续版本可能会考虑直接在创建 PHP 运行环境时支持 supervisor。
567
7
大佬最好能提供php启动supervisor方法
因为php官方用的是alpine 自己构建的容器需要其他版本 (原因是有些软件在alpine上无法安装或者缺少各种库)
提供php启动supervisor方法 和 alpine 支持supervisor启动 相比 提供php启动supervisor方法需求更大一些 对于开发者也更方便一些
所在现在supervisor还不能守护php容器里的命令吗
567
9
暂时还是不行的 最坑的 php 用的是fpm fpm需要接收 openresty 转发的数据 所以要启动 必须要有php-fpm 命令 但是supervisor cmd的命令又总是替换了php-fpm 感觉是一个无解的状态
需要在 php-fpm 容器中安装 supervisor
我们考虑后续自己维护 php-fpm 镜像,并增加 supervisor
短期内看看能不能出个临时解决方案
567
11
我试过啊 在容器按安装supervisor 但是要手动启动 不能构建的完成自动启动