[英]docker container started in Detached mode stopped after process execution
我使用以下命令以分离模式创建我的Docker容器:
docker run [OPTIONS] --name="my_image" -d container_name /bin/bash -c "/opt/init.sh"
所以我需要在创建的容器上执行“ /opt/init.sh”。 我看到的是,脚本执行完后容器已停止。
如何在创建容器时通过脚本/服务执行来使容器保持启动状态?
有两种运行docker容器的模式
您需要的是背景模式。 这在参数中没有给出,但是有很多方法可以做到这一点。
docker run -d --name =名称容器尾巴-f / dev / null
然后,您可以像这样扑向正在运行的容器:
docker exec -it名称/ bin / bash -l
如果使用-l参数,它将以登录方式登录,该方式将像普通的bash登录一样执行.bashrc。 否则,您需要手动重新进行内部打击
#!/ bin / sh
#/ entrypoint.sh
服务mysql重启
...
tail -f / dev / null <-这永远不会结束
保存该entrypoint.sh后,在其上执行chmod a + x,退出docker bash,然后按以下方式启动它:
docker运行--name = name容器--entrypoint /entrypoint.sh
这允许每个容器都有自己的启动脚本,您可以运行它们而不必担心每次都附加启动脚本
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.