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

Docker在启动时退出CMD

松高歌
2023-03-14

我有一个运行播放web应用程序的docker映像。在dockerfile中有一个CMD,它启动服务器,并等待您按下Ctrl+D退出。如果我这样做:

docker run -d  -i -v

它工作正常-启动服务器并等待Ctrl+D。

然而,当我启动容器时,情况并非如此:

docker start -i
--- (Running the application, auto-reloading is enabled) ---

[info] p.c.s.NettyServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

(Server started, use Ctrl+D to stop and go back to the console...)


[success] Total time: 1 s, completed Jul 27, 2016 11:54:13 AM <--- this indicates that the server was stopped.

如何强制docker start不停止服务器

共有1个答案

禄俊逸
2023-03-14

docker容器在其主进程完成时退出。在没有深入了解docker-file的情况下(我对play框架没有任何经验),您需要确保至少有一个进程是活动的。

您有两种选择:

  • Docker方式
    尝试使用-it类似于Docker run-it bash 来进入您正在启动的容器。这将使您的窗口保持打开状态,并允许您在容器中运行命令。
  • Docker“debug”方式
    尝试使用Docker inspect (使用Docker ps-a查找您的容器)命令调查容器退出的原因。如果您有start.sh这样的启动脚本,您可以尝试添加而不是true;执行sleep 1000;以使容器保持状态,以便在退出之前调查其正在执行的操作。
  • 尝试使用已发布的docker映像之一,如-https://hub.docker.com/r/ingensi/play-framework/
 类似资料:
  • 所以在开始这个问题之前,这里是我对码头工人的理解。 Docker有3个组件 图像 容器 DockerFile 现在,我不想采用的方法,在这里指定创建容器时要执行的步骤。 我想在Linux上安装一些基本的实体,如MongoDb、Redis等,并在它们上运行我的服务器。 于是我就这样开始了: 它返回给我容器的id。 但每次它都在说: 请帮助我做错的地方,这可能是一个新手的问题,但我被困在这里,请不要反

  • 我遇到这个问题已经有一段时间了,但没有找到解决方案。我正在rails中构建一个论坛应用程序。我刚刚完成将bootstrap和bootstrap gem添加到我的项目中。我去运行服务器,它以一个巨大的错误退出。在这里。

  • 本文向大家介绍解决docker run 或者 docker restart 启动镜像就自动退出,包括了解决docker run 或者 docker restart 启动镜像就自动退出的使用技巧和注意事项,需要的朋友参考一下 执行命令:docker run --name centos8 -d centos /bin/bash,通过docker ps查看正在运行中容器,找不到centos8。 通过do

  • 我成功地在ubuntu 18.04上安装了docker和nvidia-docker,我从NVIDIA的GPU云中提取了这个图像 用这个命令运行它 例如,容器给了我一个shell提示,它似乎可以工作 导致 它看到了我脆弱的gpu。我尝试用这个命令运行jupyter 但我明白了 我知道Jupyter安装在容器里因为当我打字的时候 我得到 打字 给予 在连接到容器的主机目录中,我有几个笔记本 但似乎什么

  • 问题内容: 我已经阅读了有关该主题的所有内容,但仍然无法弄清我的问题。我尝试在appdelegate的每个区域暂停游戏 在我的控制器中: 我知道pauseGame可以用,因为如果我在场景中用按钮切换它,它将停止游戏。即使我在将skview和场景加载到控制器中后立即暂停它们,游戏也不会在启动时暂停。在游戏中暂停游戏很容易。但是由于某种原因,每当我退出并恢复该应用程序时,游戏便会自行取消暂停。 我注意