2016-05-04 18 views
0

構建代碼存儲庫始終會生成新圖像,但它應該替換/更新現有圖像。 如何在源文件中進行更改後重建相同的圖像, 我正在通過命令構建一個容器圖像。通過將結果合成爲新圖像來構建Docker Image。爲什麼?

 

    $docker-compose up --build 

的響應爲:

 

[email protected]:/var/lib$ docker images 
REPOSITORY  TAG  IMAGE ID   CREATED    SIZE 
nodeapi_www latest  74378f9c5de5  5 seconds ago  684.3 MB 
none   none  d358efc16f16  About an hour ago 684.3 MB 
node   4.4.1  4e2e99ae7d3e  5 weeks ago   643.8 MB 

這裏是圖像是web應用程序圖像,在我運行搬運工-構成向上--build命令。之後,我在圖像列表中收到一個孤兒圖像。

回答

0

由於碼頭工作方式的性質,如果您進行任何更改,您將需要一個新的圖像,因爲圖像不會像容器那樣改變。

嘗試在構建時執行以下操作,看看是否有助於刪除舊圖像。

$ docker-compose up --build --remove-orphans 

如果你不想有這麼多的圖片,看看使用量,使得正在改變項目的數量和你並不需要重建每次更改這些文件的一次。

要看一個這樣的例子,看看https://docs.docker.com/compose/django/它不是node.js,但它的想法是一樣的。

+0

嗨肯,我試着用'--remove-orphans'運行它,但是我實際上沒有爲我工作,我得到了另一個孤兒圖片。不過,我會欣賞音量的事情,因爲它也是需要的,即(不是手動構建所有東西,它應該自動選擇每個變化) –

+0

對不起,它沒有工作。祝你好運 –

+0

實際上,仍然沒有解決方案,無論何時進行構建,Docker圖像列表中總是有一個新圖像。我們需要手動刪除它們。不過謝謝你。現在我將介紹特定容器的卷的概念,這可能會有所幫助。 –

相關問題