2016-06-08 75 views
1

我下載的centos基本映像作爲守護進程在後臺執行,然後累得到終端,並無法進入。CentOS圖像未運行?

我的主機是Ubuntu 16.04。

下面是我執行的步驟:

主機OS版本Ubuntu16.04

[email protected]:/home/jim/web# lsb_release -a No LSB modules are 
available. Distributor ID: Ubuntu Description: Ubuntu 16.04 LTS 
Release:  16.04 Codename:  xenial 
[email protected]:/home/jim/web# 

碼頭工人開始使用下列命令

[email protected]:/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 
[email protected]:/home/jim/web# docker exec -i -t my_centos bash 
Error response from daemon: Container 63f4b8fce1bd44253bb420436da3ad5b8f532b253fc9e74ff52ad1b2f9844251 is not running 

不知道爲什麼它正在退出

[email protected]:/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 
[email protected]:/home/jim/web# 

入門容器,但不知道爲什麼它正在退出

[email protected]:/home/jim/web# docker start 63f4b8fce1bd 
63f4b8fce1bd 
[email protected]:/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 
[email protected]:/home/jim/web# docker exec -i -t my_centos bash 
Error response from daemon: Container 63f4b8fce1bd44253bb420436da3ad5b8f532b253fc9e74ff52ad1b2f9844251 is not running 
[email protected]:/home/jim/web# 

PS:有人可以禁用限制,每90分鐘發佈一次???學習必須是自發和互動的。

回答

3

如果你看一下CentOS的最新圖像的Dockerfile,你會發現最後一行,從 https://github.com/CentOS/sig-cloud-instance-images/blob/2ba488ba6746fe664fa849a1c78e3204b7d3c90e/docker/Dockerfile

CMD ["/bin/bash"]

所以你推出具有殼的容器,它存在並且是全部。

嘗試

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

或任何變異

順便說一下,當你做

[email protected]:/home/jim/web# docker exec -i -t my_centos bash

你想你的容器運行,在這裏,是不是。

請與

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

,你的容器是高達

+0

我同意你的說法,你是right.My目的依然沒有送達。讓它運行到無窮無法達到任何目的。這就像有一個Unix服務器,但你不能用它做很多,這有什麼用?如何使它可用,以便我們可以安裝其他軟件更新內核等? – learner

+0

我想你想運行一個基於CentOS的Web服務器(如nginx,Apache,Lighttpd等),一個數據庫(PostGreSQL,Oracle,MariaDB ...),一個CMS(WordPress或任何...)或者還要別的嗎。它是由你決定。 – user2915097

1

你必須在交互模式下的圖像才能夠連接到它。

docker run -it centos

-it指示多克爾分配一個僞TTY連接到所述容器的stdin;在容器中創建一個交互式bash shell。

運行該命令後,您可以期待這一點。

[email protected]:~$ docker run -it centos [[email protected] /]#

0

當我們嘗試啓動容器,它執行的bash,和bash是不能夠找到控制終端由於其泊塢窗爲CentOS容器立即停止,因爲它形成。提供IT終端以及在分離模式下運行,你可以使用:

docker container run -it --name centos7 -d centos:latest 

這將在分離模式下運行碼頭工人集裝箱還可以指派控制終端打壞由於該容器不會停止。 後來進入容器中您可以使用:

docker container exec -it <container-id> bash 
0

您正在尋找在detached模式下運行centos容器。 請嘗試以下...

sudo docker run -d -it centos