Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >docker停止运行中的容器(docker关闭容器)

docker停止运行中的容器(docker关闭容器)

作者头像
全栈程序员站长
发布于 2022-07-25 13:19:36
发布于 2022-07-25 13:19:36
8.7K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

问题描述:

centos 启动一个容器添加了-d 参数,但是docker ps 或者docker ps -a查看却已经退出了

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
shell>docker run -d centos
a44b2b88559b68a2221c9574490a0e708bff49d88ca21f9e59d3eb245c7c0547
shell>docker ps

退出原因

1、docker容器运行必须有一个前台进程, 如果没有前台进程执行,容器认为空闲,就会自行退出 2、容器运行的命令如果不是那些一直挂起的命令( 运行top,tail、循环等),就是会自动退出 3、这个是 docker 的机制问题

解决方案

方案1: 网上有很多介绍,就是起一个死循环进程,让他不停的循环下去,前台永远有进程执行,那么容器就不会退出了,以centos为例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
shell>docker run -d centos /bin/sh -c "while true; do echo hello world; sleep 1; done"

缺点: 命令太冗长了,还占用一个终端 方案2:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
shell>docker run -dit centos /bin/bash

添加-it 参数交互运行 添加-d 参数后台运行 这样就能启动一个一直停留在后台运行的Centos了。 shell>docker ps 容器运行起来了

进入容器的方法:

使用exec,不要使用attach命令 attach命令就是使用现有终端,如果你要退出容器操作,那么bash结束,容器也就退出了 shell>docker exec -it /bin/bash //新建一个bash

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/127774.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
docker 容器自动退出(退出docker容器命令)
centos 启动一个容器添加了-d 参数,但是docker ps 找不到容器,docker ps -a查看却已经退出了 [root@VM_0_6_centos ~]# docker run -d centos a44b2b88559b68a2221c9574490a0e708bff49d88ca21f9e59d3eb245c7c0547 [root@VM_0_6_centos ~]# docker ps 找不到容器信息 [root@VM_0_6_centos ~]# docker ps -a status列显示已退出 [root@VM_0_6_centos ~]# docker logs centos 没有任何异常日志
全栈程序员站长
2022/07/31
5.5K0
排障集锦:九九八十一难之第十六难!-------------Docker容器docker run -d后台启动不了的问题
centos 启动一个容器添加了-d 参数,但是docker ps 或者docker ps -a查看却已经退出了 shell>docker run -d centos a44b2b88559b68a2221c9574490a0e708bff49d88ca21f9e59d3eb245c7c0547 shell>docker ps Docker容器一启动就退出的解决方案
不吃小白菜
2020/09/22
9080
排障集锦:九九八十一难之第十六难!-------------Docker容器docker run -d后台启动不了的问题
Docker命令之容器命令
docker run会先找本地镜像,如果找不到,就自动去远程仓库拉取镜像(默认拉取latest版本),然后使用这个镜像来启动容器。命令详细格式如下:
zy010101
2022/05/05
1.2K0
Docker命令之容器命令1
docker run会先找本地镜像,如果找不到,就自动去远程仓库拉取镜像(默认拉取latest版本),然后使用这个镜像来启动容器。命令详细格式如下:
用户10048459
2022/10/23
9230
docker容器中的前台程序和后台程序,为什么一定要前台运行
目前了解的可以使用以下3种方法,具体用哪种方法,依据实际情况,生产情况下,通常用docker-compose结合具体cmd作为容器初起的命令。
用户10048459
2022/10/23
4.1K0
【云原生】Docker常用命令
有镜像才能创建容器, 这是根本前提(下载一个CentOS或者ubuntu镜像演示)
一个风轻云淡
2022/11/15
4370
【云原生】Docker常用命令
docker 命令大全_常用docker命令
注意:当我们以后台方式启动一个容器时,就必须要有一个前台进程,否则 docker 容器发现没有应用,就会自动停止。
全栈程序员站长
2022/09/30
4350
docker 命令大全_常用docker命令
docker exec 进入容器报错 is not running
Error response from daemon: Container 1d7dd0a4a999bb6346c58b0eed286573e8139cca1d2854c543f713c2fea220c7 is not running 分析: Docker容器后台运行,就必须有一个前台进程。主线程结束,容器会退出。 所以就加上了 dit 参数,再次运行即可。 docker ps -a # 查看正在运行的镜像 docker rm -
eisc
2021/05/10
10.2K0
docker 入门-容器(二)
使用 run 指令,创建并运行一个基于 Ubuntu 镜像的容器,如果本地没有该镜像,docker 会自动去 docker hub 下载
benny
2020/04/23
6200
Docker之常用命令
同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
yuanshuai
2022/08/22
4740
Docker之常用命令
【云+社区年度征文】Docker教程(2)—Docker常用基础命令
可选参数:列出所有镜像,-a, --all 。只显示镜像id ,-q, --quiet。
AlbertYang
2020/11/26
5080
【云+社区年度征文】Docker教程(2)—Docker常用基础命令
Docker常用命令大全(万字详解)
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
小熊学Java
2022/09/05
9.2K0
解决docker容器启动不了的问题
今天在学习docker的时候遇到个问题,在通过镜像创建容器的过程中,使用命令:docker run --name docker-test -d learn/ping /bin/bash,运行成功以后,发现容器没有预期中的后台运行,而是直接挂掉了,docker ps -a发现容器已经运行结束了。
kevinfaith
2018/09/18
18.5K0
Docker总结(命令、镜像、容器、数据卷、DockerFile、网络、Compose)
帮助文档地址:https://docs.docker.com/engine/reference/commandline/docker/
老K博客
2023/12/18
1440
Docker-命令与镜像(二)
镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。
IT小马哥
2021/06/03
5020
Docker-命令与镜像(二)
docker重启后镜像消失_u盘安装iso原版镜像
根据镜像启动容器,执行命令如下:docker run –name mycentos -d centos,通过docker ps查看正在运行中容器,缺找不到mycentos容器。再次通过docker ps -a查看发现,mycentos容器已经处于停止状态了。
全栈程序员站长
2022/11/08
2.7K0
Docker常用命令超细介绍
  工欲善其事必先利其器,本文我们首先来给大家介绍下docker中的常用命令,只用对这些常用命令非常熟悉我们才能更好的来使用docker。
用户4919348
2019/12/26
8230
Docker常用命令超细介绍
Docker 容器操作
//容器与主机文件互拷贝 docker cp test:/root/123.sh /root/123.sh 备注:将容器test中的文件/root/123.sh拷贝至主机/root/123.sh docker cp /root/123.sh test:/root/123.sh 备注:将主机/root/123.sh文件拷贝至容器test中 查看容器: docker ps -a 进入容器: docker exec -it idOrName bash 退出容器: exit 查看日志: docker l
问天丶天问
2018/06/19
5520
Docker(三)- 从镜像运行启动容器「建议收藏」
所谓容器,我们可以理解为是一个虚拟的计算机,其中运行着操作系统,操作系统中运行着我们部署的应用。
全栈程序员站长
2022/09/28
1.3K0
Docker(三)- 从镜像运行启动容器「建议收藏」
Docker 容器使用
docker客户端非常简单,我们可以直接输入docker命令来查看到 Docker 客户端的所有命令选项。
子润先生
2021/06/30
5880
相关推荐
docker 容器自动退出(退出docker容器命令)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文