> 原文出處:http://dockone.io/article/808
最近幾年中軟件開發方式的演進已經根本性地改變了應用程序。這些改變影響了對于底層基礎架構、工具以及流程(管理整個生命周期)的需求。應用程序從大型單體代碼庫轉變成了一種由很多小型服務松散耦合而成的集合,人們稱之為微架構。在一種渴望的驅使下-用一種在基礎架構間可以移植的新方式來更快地交付更多軟件,我們看到身邊越來越多的敏捷組織從中收益,這些組織囊括了初創企業和大型企業。
這些新的應用程序不僅行為不同而且他們的架構從根本上改變了它們是如何隨著時間的推移進行構建、部署、管理及安全防護的。不再需要在虛擬機(VM)或者裸機上以配置大型服務器來處理少量的大型負載,而代之以在一組普通硬件之上運行小型應用程序集。通過在應用程序之間共享同一個OS,容器升格為這些新應用程序的打包模型。較少的OS實例在主機資源、成本和持續運維等方面為應用程序基礎架構帶來了明顯的優勢。
為了增強一個系統的彈性,關于應用程序安全的最佳實踐長久以來都建議分層的策略。在這篇論文中我們將介紹與Linux技術及Docker容器有關的安全概念。
要點包括:
* 容器通過減少主機自身的暴露區域以及對應用程序與主機之間、應用程序之間進行隔離實現了更多一層的防護,而這種隔離并沒有使用更多的底層基礎架構資源。
* 容器和虛擬機(VMs)可以部署在一起,從而為應用程序服務提供更多的隔離及安全層級。
* 容器的性質有利于快速、便捷的應用程序打補丁以及OS更新,應用程序及基礎架構的分層,有助于維持整體的安全合規性。