【问题标题】:Docker linux: How to start multiple console/terminals for one running container?Docker linux:如何为一个正在运行的容器启动多个控制台/终端?
【发布时间】:2017-08-12 18:35:05
【问题描述】:

我正在使用下面的命令来运行 docker,

docker run -it centos:6.5 bash

它以root用户启动bash,没问题。

但我希望有多个终端连接到它并做不同的事情。我发现attach 命令只会复制一个终端窗口,所有输入/输出都将被传播。它没有解决我的要求。

如何做到这一点?

【问题讨论】:

  • 另一种选择是安装 screen,使用简单的 screen 执行它,然后使用 CTRL + a + c 创建其他 shell。然后您可以使用CTRL + a + SPACE 在shell 中循环。

标签: linux docker terminal console


【解决方案1】:

容器运行后,您应该可以使用docker exec 在同一个容器中运行额外的 Bash 会话。

当您的第一个容器运行时,使用docker ps 查找其容器 IDdocker ps 输出中的第一列),例如4a7afcdeb729,然后运行以下命令:

docker exec -it 4a7afcdeb729 bash

这应该会在容器中打开一个新的终端会话。

【讨论】:

  • 这是我所期望的。非常感谢。
  • 这似乎立即退出。我们如何在第二个交互式 shell 中进入容器?好的,找到了:您可能想要编辑答案以包含-it
  • -it 为我工作过 exec -- 如果你想“在第二个交互式 shell 中进入容器”,`docker exec -it 4a7afcdeb729 bash' 是对的
  • 你当然是对的,我在答案中添加了缺失的标志。感谢您添加评论!
猜你喜欢
  • 2019-03-11
  • 1970-01-01
  • 1970-01-01
  • 2020-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-22
  • 1970-01-01
相关资源
最近更新 更多