Docker 1.9正式發布,支持Swarm和多宿主機互聯
近日,Docker公司 正式發布Docker 1.9版本 。該版本包含了正式用于產品的Swarm和多宿主機互聯功能,為Docker引擎添加了新的卷管理系統,并修改了Compose使其更好的支持多種環境。
為了更好的使用容器來完成相關工作,Docker提出了一整套的解決方案——互聯(Networking)負責創建虛擬網絡,為容器間通信提供支 持;Docker 引擎中新的卷管理系統負責為數據永久存儲提供幫助;在這些基礎上,Compose負責運行應用程序。總而言之,該版本進行了重大升級,為擴展分布式應用產 品提供了基礎。
多宿主機互聯
在今年6月份的DockerCon上,互聯曾經作為測試版本的特性被 提出 。目前,該特性正式集成在了Docker引擎的穩定版中,并將在產品中使用。其主要功能是為跨宿主機創建Docker引擎中的虛擬網絡提供支持。用戶可以 把其所屬的容器掛載到網絡中,并控制網絡拓撲和通信方式。此外,系統還允許用戶在不修改應用的情況下直接與任何網絡進行集成。更多詳情可以參考 Docker官網中的 互聯專題博客 和Docker的相關工程師即將舉行的 專題在線會議 。
永久性存儲
永久性存儲是很多分布式應用一直想要使用的功能。在Docker 1.8中,用戶已經可以通過卷插件和第三方的存儲系統實現該功能。為了更好的滿足用戶需求,Docker 1.9直接內置了一個全新的卷管理系統,使得用戶可以更加見得的使用插件。而且,該系統可以和Swarm協同工作,實現集群內永久性存儲的管理。通過以下 例子,即可看出新系統使用 Flocker插件 的便捷程度:
$ docker volume create -d flocker --name=myvolume $ docker run -v myvolume:/data busybox sh -c "echo hello > /data/file.txt" $ docker run -v myvolume:/data busybox sh -c "cat /data/file.txt"
此外,系統還提供了用于 Blockbridge 、 Ceph 、 ClusterHQ 、 EMC 和 Portworx 的驅動器。更多細節可以參考 卷文檔 和 卷插件文檔 。
Docker Swarm 1.0
Swarm是一個為Docker引擎服務的原生集群系統。在新的版本中,Docker公司對Swarm進行了重新測試和升級,消除了若干bug, 并進行了性能優化。Docker公司表示,和互聯以及卷管理系統結合在一起,Swarm完全可以用于用戶產品。而且,Docker公司已經在1000個節 點/30000個容器規模下進行測試,工作正常。
Docker引擎 1.9
新版的Docker引擎中加入了一些新的特性:
- Dockerfile中的編譯時參數:用戶可以在Dockerfile中定義參數,然后傳遞給
docker build
來定制編譯鏡像的方式。例如,用戶可以通過設置HTTP_PROXY
來定制一個依賴包的安裝版本等。 - 并發式拉取鏡像:如果用戶想要拉取的鏡像已經在拉取列表中,系統會顯示拉取進度,并正確退出命令。否則,系統會同時進行多個鏡像的拉取。
- 定制化停止信號:引擎中添加了一個
STOPSIGNAL
Dockerfile指令,允許用戶可以定制化運行docker stop
時的信號。 - AWS CloudWatch記錄驅動:如果用戶使用AWS服務,新版引擎支持將容器日志直接發送到CloudWatch。
- 磁盤I/O統計:
docker stats
可以直接顯示磁盤的I/O情況。
Docker引擎的完整特性列表可以參看 版本說明 。
Docker Compose 1.5
Compose是一個定義和運行多容器應用程序的工具。該版本中新添加的特性如下:
- 支持Windows:Compose目前可運行在Windows環境中,并已經集成在 Windows版本的Docker工具箱 中。
- Compose文件中的環境變量:通過使用環境變量,用戶可以使得Compose文件中的任何內容在運行時可配置。
- 更好的支持多種環境:用戶可以指定一個單獨的基礎文件,來描述應用程序的結構和開發/測試/產品流程中的重載情況。
- 和互聯集成在了一起:用戶可以部署一個跨多個宿主機的Compose應用。
- Compose文件的驗證:Compose目前可以徹底驗證用戶的Compose文件,并將錯誤信息進行輸出。
Compose的完整特性列表可以參看 版本說明 。
Docker工具箱
用戶可以通過 Docker工具箱 來使用所有在開發中的工具。它包含了以上所有工具的最新版本,并將其集成為了一個統一的安裝包。此外,它還包括了在個人電腦和云提供商處創建Docker 引擎的Machine 0.5工具。而Machine目前一經擁有了可插拔的驅動器。對于目前部支持Docker容器的云平臺,用戶可以編寫自己的驅動器。
Docker Registry 2.2
該版本Registry的新添加特性如下:
- 支持Google云存儲:用戶可以把層和manifest文件存儲到Google云平臺中。
- 只讀模式:該模式可用于防止不安全的管理員級別任務修改系統文件。
- 可配置的文件存在檢查和HTTP健康檢查:管理員可以通過放置一個文件在文件系統中來臨時關閉Registry。Registry可以通過配置,來檢查通知端點等其他服務器的健康程度。
- 可配置的HTTP響應頭:用戶可以定制Registry的HTTP響應頭,提供安全或處理速度等。
Registry的完整特性列表可以參看 版本說明 。