2016-12-22 184 views
-2

我想交互式执行Docker容器。无法运行Docker容器

我从图像中创建它像这样

docker create 80597e5353eb 

,其输出的ID:

7372c2d60d513431026a40c50d6f1433e1bc62c57bca4086587193b24c329535 

然后我做docker start对ID:

docker start 7372c2d60d51 

但随后,当我尝试执行容器时:

docker exec -it 7372c2d60d51 /bin/bash 

我得到:

Error response from daemon: Container 7372c2d60d513431026a40c50d6f1433e1bc62c57bca4086587193b24c329535 is not running 

为什么?我刚启动容器,并没有发现任何错误。

为什么不启动?

+6

什么是'泊坞窗PS -a'(泊坞窗开始后)的输出。你看到你的容器吗?什么是状态?如果它没有运行,你可以通过“docker日志containerid”。我会认为你错过了启动容器所必需的一些环境变量或参数。 – lvthillo

+0

此问题已被复制很多次:http://stackoverflow.com/questions/30209776/docker-container-will-automatically-stop-after-docker-run-d http://stackoverflow.com/questions/28212380/why-docker-container-exits-immediately – Nauraushaun

回答

3

1.为什么泊坞窗容器出口,如果没有错误

目前并不需要成为一个泊坞窗容器退出的错误。

如果内部运行的代码完成执行,则Docker容器将退出(停止运行)。

例如,您可以制作一个打印“hello world”的容器。只要容器打印hello世界短语,它就会退出。

连续运行的应用程序的一个例子是监听端口的Web服务器。

2.为什么容器无法启动

容器可能是开始。但是,容器快速停止。

您可以使用以下命令来查看所有创建的容器以及它们的运行状态。

docker ps -a 

您可能会看到类似下面的东西(注意“已退出”状态): enter image description here

+0

这个问题已经回答了很多次。但我认为这可能是最好的答案...... – Nauraushaun