相关疑难解决方法(0)

Docker容器将在"docker run -d"后自动停止

根据我到目前为止阅读的教程,使用" docker run -d"将从图像启动一个容器,容器将在后台运行.这就是它的样子,我们可以看到我们已经有了容器ID.

root@docker:/home/root# docker run -d centos
605e3928cdddb844526bab691af51d0c9262e0a1fc3d41de3f59be1a58e1bd1d
Run Code Online (Sandbox Code Playgroud)

但如果我跑" docker ps",则没有任何回复.

所以我试过" docker ps -a",我可以看到容器已经退出:

root@docker:/home/root# docker ps -a
CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS                         PORTS               NAMES
605e3928cddd        centos:latest         "/bin/bash"         31 minutes ago      Exited (0) 31 minutes ago                          kickass_swartz
Run Code Online (Sandbox Code Playgroud)

我做错了什么?我该如何解决这个问题?

docker

277
推荐指数
11
解决办法
33万
查看次数

如何在启动服务后保持Docker容器运行?

我已经看过一堆教程似乎做了我想做的事情,但出于某种原因,我的Docker容器退出了.基本上,我在Docker容器中设置了一个Web服务器和几个守护进程.我通过一个名为bash的脚本完成了最后的部分run-all.sh,我在Dockerfile中运行CMD.run-all.sh看起来像这样:

service supervisor start
service nginx start
Run Code Online (Sandbox Code Playgroud)

我在Dockerfile中启动它,如下所示:

CMD ["sh", "/root/credentialize_and_run.sh"]
Run Code Online (Sandbox Code Playgroud)

我可以看到,当我手动运行时(即使用-i -t/bin/bash访问图像),服务都能正常启动,并且当我运行图像时,一切看起来都正常运行,但它会退出一次它完成了我的流程.我希望这些进程无限期地运行,据我所知,容器必须继续运行才能实现.然而,当我跑步时docker ps -a,我看到:

?  docker_test  docker ps -a
CONTAINER ID        IMAGE                            COMMAND                CREATED             STATUS                      PORTS               NAMES
c7706edc4189        some_name/some_repo:blah   "sh /root/run-all.sh   8 minutes ago       Exited (0) 8 minutes ago                        grave_jones
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?为什么要退出?我知道我可以在我的bash脚本末尾添加一个while循环来保持它,但是什么是阻止它退出的正确方法?

docker

131
推荐指数
9
解决办法
16万
查看次数

你如何在bash中启动Docker-ubuntu容器?

这个问题的答案不起作用.

在我可以attach或不接受-t标志之前,docker容器总是退出.我可以列出我尝试过的所有命令,但它是start exec attach各种-it标志和组合/bin/bash.

如何将现有容器启动到bash中?为什么这么难?这是Docker的"不正当"使用吗?

编辑:我创建了容器docker run ubuntu.有关容器的信息:60b93bda690f ubuntu "/bin/bash" About an hour ago Exited (0) 50 minutes ago ecstatic_euclid

bash ubuntu docker

16
推荐指数
2
解决办法
3万
查看次数

使用"tail -f/dev/null"来保持容器意外失败

我正在使用tail -f/dev/null命令来保持容器.

该行本身放在一个前后有回声的脚本中.尾部-f/dev/null下的echo 预计是无法访问的,但出于某种原因我在日志中看到它.

一旦出现问题,每次重启容器都会导致容器启动并完成.只有rm和rebuild解决了这个问题.

我不确定它是否已连接,但我注意到在很短的时间内停止和启动计算机的一个问题帮助我重现了这个问题.

在什么情况下tail -f/dev/null可以继续下一行?

基本映像: ubuntu 64x,14.0.4

计算机操作系统: ubuntu 64x,14.0.4

docker ubuntu-14.04

8
推荐指数
3
解决办法
9020
查看次数

标签 统计

docker ×4

bash ×1

ubuntu ×1

ubuntu-14.04 ×1