[Azure] Azure support for Docker
這幾天看到一個新名詞 Docker ,順手找了些資料了解一下午麼是 Docker ,順便meno一下。 Docker 是一個基於Linux Container 虛擬化技術的工具,在今年6月釋出1.0正式版本。比較令人好奇的是 Docker 跟一般我們所熟知的VM虛擬化有什麼不同呢?原來 Docker 的出發點是以應用程式為中心的虛擬化技術,而VM是以作業系統為中心有所不同,VM的架構是在一台HOST OS上建立多個虛擬化的Ghost OS,應用程式再掛載安裝在這些各自獨立的Ghost OS裡,所以即使應用程式本身可能只有幾十K大小,但必須先開一個幾百MB的Ghost OS,而且開一台Ghost OS的時間最快最快也需幾分鐘的時間,相對來說以應用程式為中心出發的 Docker 虛擬化技術,則是只有一個 HOST OS ,然後在這個HOST OS裡建立多個各自獨立的Container容器,應用程式則在這些各自獨立的Container中運行,相較之下建立Container的時間會比Ghost OS來的快,在硬體資源上,Container所浩的資源也比Ghost OS來的低,因此在同樣條件下的機器,採用VM架構的虛擬化技術所可能承載的數量會比Container的虛擬化技術的可用數來的低,Container 彼此間是共用 Host OS 核心,但利用 namespace 來區分達到隔離每個Container目的。目前Microsoft也正盡力於在Azure的Windows Server環境上實現Container,另外在上週也出現了 ASP.NET 5 Docker 的映象檔 https://github.com/aspnet/home ,在ASP.NET vNext裡允許各個ASP.NET的應用程式擁有各自的 Runtime版本,再搭配DI的機制下,ASP.NET vNEXT的應用程式可以說是相當的靈活,也不再像是以往的ASP.NET需要一大包的.NET Framework,從某種角度來看跟 Docker 的Container 想法是相當雷同的,有關這部份待後續筆者實際玩一下後,再跟大家分享囉………
Ref :
Docker and Microsoft: Integrating Docker with Windows Server and Microsoft Azure
New Windows Server containers and Azure support for Docker
Docker Containers Coming to a Microsoft or Linux Server Near You
The Docker Virtual Machine Extension for Linux on Azure
By No.18