Ped*_*dro 12 linux ubuntu docker linux-containers
我正在用docker做一些初步测试.我有我的图像,我可以运行一些容器,:
docker ps
Run Code Online (Sandbox Code Playgroud)
我这样做docker attach container_id并启动apache2服务.
然后从主控制台我将容器提交到图像.
退出容器后,如果我尝试启动容器或尝试从提交的映像运行一个新容器,则始终停止该服务.
如何在启动服务的情况下创建或重启一个容器,例如apache?
dam*_*ick 28
编辑:自从最初发布这个答案以来,我已经学到了很多关于Docker的知识."在Docker容器中自动启动服务"对于Docker来说不是一个好的使用模式.相反,使用诸如fleet,Kubernetes甚至Monit/SystemD/Upstart/Init.d/Cron之类的东西来自动启动在Docker容器内执行的服务.
原始答案:如果您使用该命令启动容器/bin/bash,则可以按照此处概述的方式完成此操作:https://stackoverflow.com/a/19872810/2971199
因此,如果您正在启动容器,docker run -i -t IMAGE /bin/bash并且如果要在启动容器时自动启动apache2,请在容器中编辑/etc/bash.bashrc并添加/usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd.conf(或任何apache2启动命令)到文件末尾的换行符.
将更改保存到您的映像并重新启动它,docker run -i -t IMAGE /bin/bash您将在附加时发现apache2正在运行.
| 归档时间: |
|
| 查看次数: |
54590 次 |
| 最近记录: |