2015-10-17 47 views
7

我一直在嘗試在最近2天內對在多容器集上使用docker-compose進行測試的Dockerfile進行小編輯。「docker-compose」似乎不允許或從本地圖像生成

我可以在本地構建和標記容器,但只要運行'docker-compose',它就從註冊表副本中拉出(與docker-compose文檔相反)。

如果我在目錄本身上運行docker build .,容器找到正確,但運行「docker-compose build」失敗。

bash-3.2$ docker images 
REPOSITORY   TAG     IMAGE ID   CREATED    VIRTUAL SIZE 
busbyjon/heroku-php latest    c6c60910a924  58 minutes ago  1.754 GB 
mysql     latest    d7da97aedce5  3 days ago   324.3 MB 
heroku/cedar   14     ef12eade669a  2 weeks ago   1.265 GB 
bash-3.2$ docker-compose build 
cleardb uses an image, skipping 
Building shell... 
Step 0 : FROM busbyjon/heroku-php 
Pulling repository docker.io/busbyjon/heroku-php 
Service 'shell' failed to build: Error: image busbyjon/heroku-php:latest not found 

請注意如何將busbyjon/heroku-php列爲圖像,但未找到。它似乎並不重要,我標記此圖像(它可以是「測試」,它仍然不起作用!)。

請幫忙!

+0

它會工作。你使用的是什麼版本的'docker'和'docker-compose'? – dnephin

+0

聽起來就像你遇到了這個問題 - https://github.com/docker/compose/issues/1568 –

+0

是的!這看起來是正確的 - 我需要等待此修復才能發佈 - 同時我已將更改推送到Docker中心以解決此問題 – Buzbe

回答

2

我能夠通過標記我的形象,這樣來克服類似的問題:

  • myservicelocal/myservice

這並沒有爲我工作:

  • my-service

也許這是不是原因..但嘗試從您的圖片標籤中刪除破折號。 要重新運行您的圖像:docker tag busbyjon/heroku-php herokuphp然後使用圖像名稱herokuphp in docker-compose.yml