当前位置: 首页 > 知识库问答 >
问题:

使用“退出”后如何保留docker高山集装箱?

宫亦
2023-03-14

例如,如果我使用命令< code > docker run-it alpine/bin/sh ,它会启动一个终端,之后我就可以安装软件包和所有东西。现在,当我使用< code>exit命令时,它会返回到终端。(主要的一个)

那么,如何再次访问同一容器呢?当我再次运行该命令时,我得到了一个新鲜的高山。

请帮帮忙

共有3个答案

曾晨
2023-03-14

您应该使用< code>docker start,它允许您启动一个停止的容器。如果您没有命名您的容器,您需要使用< code>docker ps来获取它的名称/id。

例如,

$docker ps
CONTAINER ID        IMAGE                        COMMAND
4c01db0b339c        alpine                       bash    

$docker start -i -a 4c01db0b339c   
闾丘炫明
2023-03-14

提取图像

docker image pull alpine

看到那张图片了吗

docker image ls   OR  just docker images

看看阿尔卑斯山里面有什么

docker run alpine ls -al

现在你的问题是如何与外壳呆在一起

docker container run -it alpine /bin/sh

您在shell脚本命令行中。有些发行版可能有bash shell。

 docker exec -it 5f4 sh
 / # (<-- you can run linux command here!)

此时,您可以使用高山的命令行并执行

ls -al

键入exit to come out-您可以在分离模式下运行它,它将继续运行。

使用exec命令我们可以再次登录

docker container run -it -d alpine /bin/sh

验证它是UP,并复制容器ID的前2-3位数字

docker container ls

使用exec命令登录

docker exec -it <CONTAINER ID or just 2-3 digits> sh

你需要停止,否则它会继续运行。

docker stop <CONTAINER ID>
朱海超
2023-03-14

只要指定的run命令进程仍在运行,容器就会存在。当您指定运行/bin/sh时,一旦您退出,sh进程将死亡,您的容器也将死亡。

如果你想让你的容器保持运行,你必须让里面的进程保持运行。对于您的情况(我不确定您想要获得什么,我假设您只是在测试),下面的内容将使它保持运行

docker run -d --name alpine alpine tail -f /dev/null

然后,您可以使用

docker exec -it alpine sh  
 类似资料:
  • 问题内容: 例如,如果我使用命令, 它将启动一个终端,之后我可以安装软件包和所有软件包。现在,当我使用命令时,它会返回到终端。(主要一) 那么如何再次访问同一容器?当我再次运行该命令时,我得到了一个新的高山。 请帮忙 问题答案: 拉图像 看到那里的图像 看看高山里面有什么 现在您的问题是如何留在外壳上 您在Shell脚本命令行中。一些发行版可能有bash shell。 此时,您可以使用alpine

  • 所以在开始这个问题之前,这里是我对码头工人的理解。 Docker有3个组件 图像 容器 DockerFile 现在,我不想采用的方法,在这里指定创建容器时要执行的步骤。 我想在Linux上安装一些基本的实体,如MongoDb、Redis等,并在它们上运行我的服务器。 于是我就这样开始了: 它返回给我容器的id。 但每次它都在说: 请帮助我做错的地方,这可能是一个新手的问题,但我被困在这里,请不要反

  • 问题内容: 有没有办法使用NHibernate将枚举持久化到数据库?那有一张代码表和枚举中每个值的名称。 我想保留没有实体的枚举,但仍然具有从所有其他引用实体到枚举的表的外键(枚举的int表示形式)。 问题答案: 你们为什么把这个复杂化呢?真的很简单。 映射如下所示: 该模型属性如下所示: 枚举看起来像这样: NHibernate将自动解决所有问题。为什么键入比您需要的更多???

  • 问题内容: 我已经开始使用推荐的广告,并从移走了。我无法重新粘合在一起的一件事是使用持久性Cookie存储。我想简单地将自定义cookie处理程序/管理器附加到我的连接中以存储cookie。Android文档并不是很有帮助,因为它将Cookie主题分为两行。 我以前使用过LoopJ ,效果很好。 关于如何在Android中设置可以附加到我的自动保存和检索cookie 的持久性cookie存储的想法

  • 我希望在我使用Ubuntu18.04作为操作系统打开笔记本电脑时启动Xampp。事实上,当我启动电脑时,Docker已经开始运行了。因此,不可能启动MySql和Apache。看起来端口3306已经被Docker使用了。我真的想先退出Docker,通过激活MySql和Apache,在本地用Xampp开发我的应用程序。我应该遵循哪些步骤? 我在Ubuntu 18.04和Docker版本18.09.5

  • 问题内容: 考虑: 我按 + 退出。 我想继续运行此容器,但发现不能。 唯一的方法是 我对吗?有没有更好的方法?(我正在使用docker 0.8.0。) 问题答案: 您可以在现有容器退出后重新启动,并且所做的更改仍然存在。