2014-04-08 51 views
2

我是Docker的新手,我正在爲Docker做Node.js教程。我卡在完全相同此步驟:http://docs.docker.io/en/latest/examples/nodejs_web_app/#building-your-image運行碼頭圖像不起作用

我已執行此:

$ docker build -t user/centos-node-hello . 
... 
Successfully built c04aea889b03 

併成功建成。

$ docker images 
REPOSITORY     TAG     IMAGE ID   CREATED    VIRTUAL SIZE 
user/centos-node-hello latest    c04aea889b03  23 minutes ago  667.9 MB 
ubuntu      13.10    9f676bd305a4  9 weeks ago   178 MB 
ubuntu      saucy    9f676bd305a4  9 weeks ago   178 MB 
ubuntu      raring    eb601b8965b8  9 weeks ago   166.5 MB 
ubuntu      13.04    eb601b8965b8  9 weeks ago   166.5 MB 
ubuntu      12.10    5ac751e8d623  9 weeks ago   161 MB 
ubuntu      quantal    5ac751e8d623  9 weeks ago   161 MB 
ubuntu      10.04    9cc9ea5ea540  9 weeks ago   180.8 MB 
ubuntu      lucid    9cc9ea5ea540  9 weeks ago   180.8 MB 
ubuntu      12.04    9cd978db300e  9 weeks ago   204.4 MB 
ubuntu      latest    9cd978db300e  9 weeks ago   204.4 MB 
ubuntu      precise    9cd978db300e  9 weeks ago   204.4 MB 
busybox      latest    769b9341d937  9 weeks ago   2.489 MB 
centos      6.4     539c0211cd76  12 months ago  300.6 MB 

現在,我嘗試運行圖像:

$ docker run -p 49160:8080 -d user/centos-node-hello 
995bfeef4edd723027480fdb43f097e2ba6a97b8fb1d2e9ec679dc1247f68a84 

但是如果我檢查的過程中,實例沒有運行。

$ docker ps 
CONTAINER ID  IMAGE    COMMAND    CREATED    STATUS    PORTS 

任何想法?謝謝。

+2

嘗試使用'docker ps -l'來打印運行的最後一個容器。您可以從該輸出中獲取容器ID,然後使用「docker logs '查看日誌,以查看出了什麼問題。 –

+0

檢查''docker version'',看看你的守護進程和客戶端是否是相同的版本。如果沒有,請更新並重試。並非所有的客戶端/守護進程都提供了很好的信息(在Docker-1.0之前的版本中,1.0之後應該更穩定)。 – Andy

回答

0

不知道你的執行環境究竟。我已經使用Vagrant成功運行了docker-node-hello示例。請參閱以下步驟。

注意:由於centos:6.4圖片在Docker Hub中不再可用,因此我已將基礎圖像修改爲centos:6.6

步驟1:編輯Vagrantfile

Vagrant.configure(2) do |config| 
    config.vm.box = "williamyeh/ubuntu-trusty64-docker" 

    config.vm.provision "shell", inline: <<-SHELL 
    git clone https://github.com/enokd/docker-node-hello.git 
    cd docker-node-hello 
    sed -i -e 's/centos:6.4/centos:6.6/' Dockerfile 
    docker build -t centos-node-hello . 
    docker run -p 49160:8080 -d centos-node-hello 
    docker ps 
    SHELL 
end 

步驟2:運行vagrant up

步驟3:運行vagrant ssh -c "docker ps"看如果容器是活的。

步驟4:運行vagrant ssh -c "curl localhost:49160"以查看index.js是否運行良好。