docker退出容器而不关闭容器的两种方法:1、按“Ctrl+P+Q”按钮退出容器,即可正常退出不关闭容器;2、exit退出可以利用“docker restart”命令重启容器、attach命令进入容器后,重启httpd和radosgw,并且使用wget验证是否将radosgw重启成功即可。
本教程操作环境:linux7.3系统、docker19.03版、Dell G3电脑。
docker怎么退出容器而不关闭容器
方法一:如果要正常退出不关闭容器,请按Ctrl+P+Q进行退出容器
以下示例为退出容器但不关闭容器
方法二:如果使用exit退出,那么在退出之后会关闭容器,可以使用下面的流程进行恢复
-
使用docker restart命令重启容器
-
使用docker attach命令进入容器
-
重启httpd(service httpd restart)和radosgw(/etc/init.d/ceph-radosgw restart),并且使用wget验证是否将radosgw重启成功
扩展知识
事实上我们可以在启动容器的时候就进行配置,加入-d参数来启动容器,当然,这条命令仅限于启动全新的容器,启动关闭的容器是不可以的。
docker run -d: 后台运行容器,并返回容器ID
以下示例为使用docker -d启动容器并退出
在这里你可能会发现,使用了-d的命令退出后容器依然还是死了,动手型的朋友可能会发现只是用docker run -d去启动容器也一样是死的
这里其实需要了解的是容器的运行机制,Docker容器在后台运行,必须要有一个前台进程,这里我们让容器有前台程序运行,就可以实现容器的-d 启动后存活
我这里使用nohup在后台运行一个每1000秒ping一次百度的进程,另外你也可以使用"while true; do echo hello world; sleep 1; done",无限输出hello world。
另外即便是有进程在后台运行,你进入了容器,输入exit退出,依然会终止容器的运行,请谨记。
推荐学习:《docker视频教程》