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

在不阻止容器的情况下从容器上分离的正确方法

彭宜人
2023-03-14
    null

这两个都能让我到达集装箱中的终端,我如何才能在不阻止它的情况下离开集装箱的终端呢?

exitctr+c都停止容器

共有1个答案

白星渊
2023-03-14

更新:如以下答案Ctrl+P所述,Ctrl+Q现在将交互模式变为后台进程模式。

Ctrl+C(或Ctrl+\)应该将您从容器中分离出来,但它会杀死容器,因为您的主进程是bash。

一个关于Docker的小课程。容器不是一个真正的全功能操作系统。当您运行一个容器时,您所启动的进程采用PID1,并具有初始化能力。因此,当进程终止时,守护进程停止容器,直到新进程启动(通过docker start)(更多相关解释http://phusion.github.io/baseimage-docker/#intro)

如果您想要一个始终以分离模式运行容器,我建议您使用

docker run -d foo

容器上有ssh服务器。(最简单的方法是遵循openssh文档化教程https://docs.docker.com/engine/examples/running_ssh_service/)

也可以通过以下方式重新启动容器

docker start foo
 类似资料:
  • 问题内容: 在Docker 1.1.2(最新)中,从容器分离而不停止容器的正确方法是什么? 因此,例如,如果我尝试: 要么 (对于已经运行的容器) 两者都将我带到集装箱中的码头,如何在不停止的情况下退出集装箱的码头? 并且都停止了容器。 问题答案: 更新: 如以下答案中所述,+ ,+ 现在可以将交互方式转换为守护程序方式。 那么+ (或+ )应分开你从容器中,但 它会杀死容器 ,因为你的主要过程是

  • 问题内容: 我使用带有标签的php docker容器作为基础: 当我尝试重新启动容器内的apache2时,容器停止: 如何在不停止容器的情况下重新启动apache2? 在将更改放入dockerfile之前,我想使用容器并对其进行自定义。我想安装一些扩展程序,为了使其正常工作,我需要重新启动apache才能使更改生效。 这是通过以下文件的日志文件: 问题答案: 如果将apache用作保持运行容器的主

  • 问题内容: 我在Docker容器上安装了Nginx,并且正在尝试像这样运行它: 问题在于Nginx的工作方式,即初始进程会立即产生一个主要的Nginx进程和一些工作程序,然后退出。由于Docker仅监视原始命令的PID,因此容器将暂停。 如何防止容器停止?我需要能够告诉它绑定到第一个子进程,或者阻止Nginx的初始进程退出。 问题答案: 像所有行为良好的程序一样,可以配置为不自我守护。 使用htt

  • 本文向大家介绍Docker 从网络上分离容器,包括了Docker 从网络上分离容器的使用技巧和注意事项,需要的朋友参考一下 示例 此命令将myAwesomeApp-1容器与app-backend网络分离。容器将不再能够与已断开连接的网络上的其他容器进行通信,也无法使用嵌入式DNS解析器在已断开连接的网络上查找其他容器。

  • 我有一个装在Docker容器中的NodeJS应用程序,我可以通过它向<code>smtp.gmail发送电子邮件。com(使用<code>nodeEmailer从Ubuntu容器中使用docker exec…,ping工作正常。我想知道是什么问题。详情如下:- 我的 Macbook: < li >操作系统:MacOS High Sierra(版本10.13.6) < li>Docker:版本18.

  • 我想使用docker容器,而不必使用弹性beanstek或ec2容器服务。我想上传一个描述容器的文件(就像您对弹性beanstek所做的那样),并让一个通用的ec2实例使用docker运行它。 当查看运行docker容器的beanstalk创建的ec2实例的用户数据部分时,我看到一个cloud init脚本,它下载一个完成所有设置的大型shell脚本(示例)。我假设elastic beanstal