php保活,保活Docker容器与supervisord

我结束我的Debian Dockerfile这些行:保活Docker容器与supervisord

EXPOSE 80 22

COPY etc/supervisor/conf.d /etc/supervisor/conf.d

CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/supervisord.conf"]

在/etc/supervisor/conf.d/start.conf文件:

[program:ssh]

command=/usr/sbin/service ssh restart

[program:nginx]

command=/usr/sbin/nginx -g 'daemon off;'

[program:systemctl]

command=/bin/systemctl daemon-reload

[program:systemctl]

command=/bin/systemctl start php7-fpm.service

如果我尝试运行使用下面的命令该码头工人形象:

$ docker run -d -p 8080:80 -p 8081:22 lanti/debian

它立即停止运行。如果我试图在前台运行它:

$ docker run -it -v /home/core/share:/root/share -p 8080:80 -p 8081:22 lanti/debian

这是一样的,立即退出。如果我使用bash CMD运行:

$ docker run --rm -it -v /home/core/share:/root/share -p 8080:80 -p 8081:22 lanti/debian bash

它保持活跃在控制台,而是由上级的预定义的命令无法运行,所以我需要运行$ service supervisor restart容器内,否则的Nginx和SSH将不会启动。

我如何开始与多个命令泊坞窗容器在启动时运行?在过去,我在主机操作系统下的systemd文件中使用了ExecStartPost行,但是由于这种原因,systemd文件变得复杂,所以我尝试将预启动命令移动到容器中,以便在任何类型的启动时自动运行。

这搬运工容器将有nginx的,PHP,SSH,在未来的phpmyadmin和mysql。我不想要多个容器。

谢谢你的帮助!

2015-12-01

Lanti

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值