我想利用碼頭圖像緩存/分層來節省帶寬,磁盤空間和花費的時間。使用提交更新碼頭圖像進行小改動
讓說:
- 我已經安裝了一個web應用程序泊塢窗圖像並部署到幾個搬運工主機。
- 泊塢窗圖像包含我的web應用程序的源代碼。
- 我工作的代碼,現在有一個新版本的代碼。
我應該如何自動化的創建一個新的泊塢窗提交最後的圖像上面只包含修正錯誤?
我的目標是隻需要下載一個小錯誤修正差異即可獲取已下載以前映像的泊塢窗主機的新映像。
這是我目前的反射關於它的沙爹:
- 我可能會結束使用
docker commit
以某種方式保存更新的形象。 - 但是如何訪問圖像內容?
- 即使如此,我將如何導入我的更改,而不會混淆原始碼頭圖像與各種工具(git和shell腳本),這些與服務web應用程序無關?
- 我已經看過捲來與另一個docker分享代碼,它會照顧它的更新。但卷不承諾。
感謝您對如何實現這一目標的任何見解!
編輯:使用多個Dockerfile似乎另一種方式來做到這一點,thx http://jpetazzo.github.io/2013/12/01/docker-python-pip-requirements/爲類似的問題。似乎我需要立即生成我的dockerfiles。
你如何將你的代碼添加到圖像? – Behe 2014-09-24 12:45:10
@Behe我不明白你的問題,因爲我已經說過這是我的問題的一部分。如果您的問題是關於在第一個地方添加代碼(在更新應用程序之前),那麼我想在自動構建中使用ADD,如http://dockerfile.github.io/#/python-runtime。 – vaab 2014-09-25 01:42:55
如果您使用Dockerfile並將ADD命令放到最後,它應該打到緩存,直到添加更改的內容,然後爲新內容創建一個新層。這聽起來有幫助嗎? – Behe 2014-09-25 15:22:06