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

如何断开运行在SSH会话中的docker容器

印晋
2023-03-14

我已经通过SSH(从我的主机)访问了一台远程机器(称之为RM)。我正在通过SSH会话在RM中运行一个docker映像。两者都基于Ubuntu16.04。

我正在这样做,因为出于某种目的我必须重新启动我的主机。

PS:在这个链接中正确的方式从容器中分离而不停止它,它不是通过SSH会话运行docker容器。所以两种情况是不同的。

共有1个答案

关学
2023-03-14

首先,必须使用-d参数并删除-it以守护进程(非交互式)模式启动docker容器。不要忘记使用--name foo选项为容器命名,以便进一步使用。

容器启动后,可以使用Docker exec-it foo sh-or-whate来控制它。如果SSH会话终止,容器将继续运行。但是,Docker Exec会话将结束。

 类似资料:
  • 问题内容: 我正在运行容器 hypriot / rpi-busybox-httpd 我正在尝试SSH到docker容器:但它给出了错误: 我马上就做吗? 问题答案: 可能是您的映像未安装二进制/ bin / bash(如之前所建议),我遇到了同样的问题,因此我可以使用/ bin / sh进入容器 另一个解决方法是直接执行命令,而无需访问任何shell。

  • 问题内容: 我正在研究Centos7。我有一个运行Jenkins的Docker容器。在那个Jenkins容器中,我必须构建并运行其他Docker容器。但是詹金斯不认识码头工人。我能够执行一个shell并将docker安装在容器中。但是,是否有可能让容器在主机上使用我的docker- engine?如何使用? 在Jenkins-(docker)-容器中安装Docker的最佳选择是什么? 问题答案:

  • 我天真地期望此命令在运行的容器中运行bash shell: 看起来这是不可能的,我得到的错误: 因此,如果我想在运行的容器中运行bashshell(例如,用于诊断目的) 我必须在其中运行SSH服务器并通过ssh登录吗?

  • 前面的详细信息 我需要在交换机上使用ssh来ping不同的主机。早些时候,我为每个主机启动了一个线程,但结果很容易超过了最大ssh连接数,所以我根据这个创建了一个交互式shell会话。但当我并行运行时,它在发出第一个命令后就一直挂在那里。我不知道如何修复此问题。 简化代码如下:

  • 问题内容: 我天真地希望此命令在正在运行的容器中运行bash shell: 似乎不可能,但出现错误: 因此,如果我想在正在运行的容器中运行bash shell(例如,出于诊断目的) 我必须在其中运行SSH服务器并通过ssh登录吗? 问题答案: 编辑:现在您可以使用(doc) 以前,此问题的答案是: 如果确实需要并且您处于调试环境中,则可以执行以下操作: 请注意,id必须为完整的ID()。 但是,我

  • 我有以下docker文件,它运行: 问题是,目前我必须首先在主机上运行 ,以便在路径的本地计算机上创建 jar 文件: 我如何将这个< code>gradle clean build放入我的docker文件中,以便构建步骤在容器内部完成? 编辑: 我希望用户的步骤是: < li >从< code>github克隆我的项目 < li >运行< code>docker build -t pokerst