站长资源服务器
docker容器运行后退出(怎么才能一直运行)
简介现象启动docker容器 docker run –name [CONTAINER_NAME] [CONTAINER_ID] 查看容器运行状态 docker ps -a 发现刚刚启动的mydocker容器已经退出原因很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程.容器运行的
现象
启动docker容器
docker run –name [CONTAINER_NAME] [CONTAINER_ID]
查看容器运行状态
docker ps -a
发现刚刚启动的mydocker容器已经退出
原因
很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程.
容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的
docker容器的主线程(dockfile中CMD执行的命令)结束,容器会退出
解决方法
可以使用交互式启动
docker run -i [CONTAINER_NAME or CONTAINER_ID]
上面的不太友好,建议使用后台模式和tty选项
docker run -dit [CONTAINER_NAME or CONTAINER_ID]
查看容器状态
docker ps -a
docker调出后台容器
docker attach [CONTAINER_NAME or CONTAINER_ID]
TIPs:退出时,使用[ctrl + D],这样会结束docker当前线程,容器结束,可以使用[ctrl + P][ctrl + Q]退出而不终止容器运行
如下命令,会在指定容器中执行指定命令,[ctrl+D]退出后不会终止容器运行
docker exec -it [CONTAINER_NAME or CONTAINER_ID] /bin/bash
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。