Docker 退出container后保持继续运行的操作

发布时间:2021-08-15 18:37 来源: 阅读:0 作者:慕城南风 栏目: 服务器 欢迎投稿:712375056

现象:

运行一个image,例如ubuntu14.04:

docker run -it --rm ubuntu:14.04 bash

退出时:

执行Ctrl+D或者执行exit

查看线程:

docker ps

发现为空,说明没有正在运行的容器。

解决方法

运行一个image:

docker run -dit ubuntu:14.04

查看线程:

发现有一个线程,打开它:

docker attach 【CONTAINER ID或NAMES】

退出时如果想继续运行:按顺序按【ctrl+p】,【ctrl+q】

如果不想继续运行:按【ctrl+d】或输入exit

另:关闭后重启请输入:docker restart 【CONTAINER ID或NAMES】

补充:Docker - 避免启动container后运行shell脚本执行完成后docker退出container

最近在使用 Dockerfile 启动容器,发现使用Dockerfile调用容器里面的shell,当shell执行完成以后,docker会退出容器。

分析

Docker 在执行shell的时候,是在后台执行的;因此,在shell执行完成以后,docker检测到没有前台任务需要执行,便退出container.

解决方法

在shell脚本的最后加上一个“永远完成不了”的命令:

# tail -f /dev/null

这样当执行到这条命令的时候,shell便不会退出,container也不会退出。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。