Docker撰寫documentation及其example use case非常適合您找出拆分不同工作環境(開發,生產等)的各種可能性。Docker撰寫何時使用圖像構建
web:
image: example/my_web_app:latest
links:
- db
- cache
db:
image: postgres:latest
cache:
image: redis:latest
但是,我不清楚何時使用圖像而不是構建。
這是唯一可用的描述,與他們唯一的image: example/my_web_app:latest
例如雲:
另一種常見的情況是運行即席或管理任務 對在撰寫應用一個或多個服務。此示例 演示運行數據庫備份。
自己的例子時休息使用build: .
據我所知,有超過建築圖像時開啓首次容器起來的時候,因爲圖像已經準備建立爲您提供更好的性能。但是,我可以預見許多問題:
- [開發]開發人員可能會更改Dockerfile配置(並且在推送任何更改之前需要先進行測試)。
- [開發]源代碼文件將改變(但我想你可以通過共享卷容易修復)。
- [製作]你可能並不總是想要在
:latest
版本(或者你是否?)。 - [any]通過使用圖像(和
:latest
標籤),您無法控制您正在觸摸的文件版本。但是每當你打開docker-compose up
它就會更新到最新的工作版本。
一些以前的觀點可能不完全正確。隨意拆除它們。
+1,因爲你指出了很有趣的細節,比如你如何處理圖像和'Dockerfile'同時 – zurfyx
同意改變。你提出了很好的觀點。我們實際上使用swarm,ansible和Jenkins,並且具有非常複雜的設置,它們都是自動的,並且在通過構建測試時將容器滾動。我試圖儘量減少我的回覆範圍,因爲Docker和ci/cd可以非常快速地變得非常複雜。如果你有一個需要測試的容器或者你的需求很小,那麼撰寫就很棒了。目前我們在生產中管理超過300個容器,並且構建系統稍微複雜一些,如上所述。 @zurfyx下午如果你想私下聊天。 –
@ GHETTO.CHiLD我很欣賞那些精通Docker的人,但我不知道如何與您聯繫。隨意使用我的個人資料中的任何社交平臺 – zurfyx