CentOS映像没有运行?

我下载了在后台执行的centos基础映像作为守护进程,然后累进terminal,无法进入。

我的主机是Ubuntu 16.04。

以下是我执行的步骤:

主机操作系统版本Ubuntu16.04

root@jim-Ubuntu1504:/home/jim/web# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04 LTS Release: 16.04 Codename: xenial root@jim-Ubuntu1504:/home/jim/web# 

通过以下命令启动docker

 root@jim-Ubuntu1504:/home/jim/web# docker run -d --name=my_centos centos Unable to find image 'centos:latest' locally latest: Pulling from library/centos a3ed95caeb02: Pull complete da71393503ec: Pull complete Digest: sha256:1a62cd7c773dd5c6cf08e2e28596f6fcc99bd97e38c9b324163e0da90ed27562 Status: Downloaded newer image for centos:latest 63f4b8fce1bd44253bb420436da3ad5b8f532b253fc9e74ff52ad1b2f9844251 root@jim-Ubuntu1504:/home/jim/web# docker exec -i -t my_centos bash Error response from daemon: Container 63f4b8fce1bd44253bb420436da3ad5b8f532b253fc9e74ff52ad1b2f9844251 is not running 

不知道为什么它退出

 root@jim-Ubuntu1504:/home/jim/web# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 63f4b8fce1bd centos "/bin/bash" 18 minutes ago Exited (0) 18 minutes ago my_centos f0ca8b9f4fa5 nginx "nginx -g 'daemon off" 23 minutes ago Up 23 minutes 80/tcp, 443/tcp my_nginxtemp bb9ab4958c33 nginx "nginx -g 'daemon off" About an hour ago Up About an hour 80/tcp, 443/tcp boring_aryabhata 886d174f641d nginx "nginx -g 'daemon off" 2 hours ago Up 2 hours 80/tcp, 443/tcp mad_fermat root@jim-Ubuntu1504:/home/jim/web# 

启动容器,但不知道为什么它正在退出

 root@jim-Ubuntu1504:/home/jim/web# docker start 63f4b8fce1bd 63f4b8fce1bd root@jim-Ubuntu1504:/home/jim/web# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 63f4b8fce1bd centos "/bin/bash" 26 minutes ago Exited (0) 2 seconds ago my_centos f0ca8b9f4fa5 nginx "nginx -g 'daemon off" 30 minutes ago Up 30 minutes 80/tcp, 443/tcp my_nginxtemp bb9ab4958c33 nginx "nginx -g 'daemon off" About an hour ago Up About an hour 80/tcp, 443/tcp boring_aryabhata 886d174f641d nginx "nginx -g 'daemon off" 2 hours ago Up 2 hours 80/tcp, 443/tcp mad_fermat root@jim-Ubuntu1504:/home/jim/web# docker exec -i -t my_centos bash Error response from daemon: Container 63f4b8fce1bd44253bb420436da3ad5b8f532b253fc9e74ff52ad1b2f9844251 is not running root@jim-Ubuntu1504:/home/jim/web# 

PS:有人可以禁止限制发布每90分钟一次? 学习必须是自发的和互动的。

如果你看看CentOS最新映像的Dockerfile,你会注意到最后一行,从https://github.com/CentOS/sig-cloud-instance-images/blob/2ba488ba6746fe664fa849a1c78e3204b7d3c90e/docker/Dockerfile

CMD ["/bin/bash"]

所以你启动一个容器,有一个shell,它的存在,就是这样。

尝试

docker run -it --name=my_centos centos sleep infinity

或任何变体

顺便说一句,当你这样做

root@jim-Ubuntu1504:/home/jim/web# docker exec -i -t my_centos bash

你认为你的容器正在运行,而这不是。

检查

docker ps -a --filter="name=my_centos"

你的容器已经装好

您必须以交互模式运行图像才能连接到该图像。

docker run -it centos

-it指示Docker分配连接到容器stdin的伪TTY; 在容器中创build一个交互式的bash shell。

运行该命令后,您可以预期这一点。

docker@default:~$ docker run -it centos [root@0c3c7d59b91c /]#