大佬教程收集整理的这篇文章主要介绍了在“ docker run -d”之后,Docker容器将自动停止,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在CentOS的dockerfile有一个默认的命令bash
。
这意味着,在后台(-d
)中运行时,外壳程序会立即退出。
最近泊坞窗授权版本都运行在一个容器分离模式 ,并
在前台模式(-t
,-i
或-it
)
在这种情况下,您不需要任何其他命令,这就足够了:
docker run -t -d centos
bash将在后台等待。最初是在kalyani-chaudhari的答案中报道的,而在jerseybean的答案中进行了详细说明。
vonc@voncvb:~$ d ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS nameS
4a50fd9e9189 centos "/bin/bash" 8 seconds ago Up 2 seconds wonderful_wright
请注意,对于 ,Marinos An 在评论中报告:
原始答案(2015年)
如本文所述:
所以这可以工作:
docker run -d centos tail -f /dev/null
A docker ps
将显示centos容器仍在运行。
从那里,您可以附加到它或从它分离(或dockerexec
某些命令)。
根据我到目前为止阅读的教程,使用“ docker run
-d
”将从图像启动容器,并且该容器将在后台运行。看起来是这样,我们可以看到我们已经有了容器ID。
root@docker:/home/root# docker run -d centos
605e3928cdddb844526bab691af51d0c9262e0a1fc3d41de3f59be1a58e1bd1d
但是如果我运行“ docker ps
”,则什么也没有返回。
所以我尝试了“ docker ps -a
”,可以看到容器已经退出:
root@docker:/home/root# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
605e3928cddd centos:latest "/bin/bash" 31 minutes ago Exited (0) 31 minutes ago kickass_swartz
我做错了什么?如何解决此问题?
以上是大佬教程为你收集整理的在“ docker run -d”之后,Docker容器将自动停止全部内容,希望文章能够帮你解决在“ docker run -d”之后,Docker容器将自动停止所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。