【編者的話】本文是docker使用過程中的一些最佳實踐。雖然很多都是老話重談,但是很多人在使用過程中還是沒有遵守,比如每個程序隻使用一個容器這個最佳實踐,有很多人都來問,如果不這樣行不行,當然行,但是如果你想長久的用docker,那還是請遵守最佳實踐吧。
<a target="_blank"></a>
可信任build讓一切變得簡單。可信任的build這個特性有助于簡化和共享repository。關鍵之處是在push任何build之前在本地完成所有開發和測試。如果你在本地建構和測試容器,當其被push到别的地方時也會用同樣的方式工作。
太多的層次使得事情無端複雜,避免不必要的層次。要點是在可讀性和最少可能的層次間找到最優平衡。隻在真正需要增加層次的時候增加額外的層次。
将應用解耦合到不同的容器中,每個程序一個容器。這使得系統更容易橫向擴充,也使得容器可以再利用。處理互相依賴的服務時,使用容器的關聯特性,而不是将它們直接放在同一個docker容器裡。
避免安裝不需要的package。這會幫助減少檔案大小,減少依賴的複雜性,并且降低構造時間。比如,在資料庫鏡像裡就沒有必要安裝文本編輯器,這完全是在浪費資源。任何時候盡可能地減少備援。
dockeringore可以很好得從建構上下文以及最終鏡像裡排除不必要的檔案和目錄。這個特性使得容器可以更快更有效地加載,節省很多浪費的啟動時間。
容器是臨時的。也就是說,我們在設計容器就應該考慮到,僅用很少的步驟和配置就可以将其停止、删除和替換。建構docker容器時就要考慮到之後這個容器如何能被輕易丢棄替換。
原文釋出時間:2015-01-30
本文來自雲栖合作夥伴“linux中國”