天天看點

《Docker容器:利用Kubernetes、Flannel、Cockpit和Atomic建構和部署》——導讀

《Docker容器:利用Kubernetes、Flannel、Cockpit和Atomic建構和部署》——導讀

**

前言

docker這一容器化技術目前正處于新浪潮的中心,這一浪潮波及了應用的建構、打包和部署。它有可能影響計算機技術的方方面面,從應用程式的開發流程到應用程式如何部署以及跨大規模資料中心進行垂直和水準擴充。

盡管docker非常流行,但它依然是一個非常新的項目,許多人并沒有真正了解什麼是docker。如果你也是其中一員,那麼本書會幫你邁出第一步,并讓你見識到容器化所承諾的巨大潛力。我的目标是通過本書引領你進入容器化的世界,這些目标可以概括為以下幾種方式。

通過實踐來學習:我常在自己的書中提及這一點,我相信學習技術最好的方式就是擷取并使用它。為了做到這一點,我讓你從幾種流行的linux系統中進行選擇,并介紹如何在所選的系統上安裝docker,而且還給出使用docker做各種事情的實際例子——從運作簡單的容器到建構和管理自己的容器鏡像。之後學習會延伸至編排和管理容器的工具和技術。

如何通過docker受益:我描述了在容器中建立和運作應用程式的好處,而不是安裝軟體包(如rpm或者deb格式)并直接從硬碟上運作非容器化的應用程式。除了運作應用程式,我還描述了容器化如何為軟體開發人員和系統管理人員帶來益處。 

docker的本質特性:我描述了docker如何利用諸如linux容器(lxc)技術保持容器與主控端上運作的其他應用程式隔離或者如何有選擇性地介入主控端系統。這些特性包括docker如何使用命名空間、中繼資料以及獨立的檔案系統來管理容器化應用并保證其安全。

閱讀本書并不需要讀者了解docker或者容器化方面的知識,讀者可以将本書作為docker的入門書。當然,本書也探讨了更進階的docker話題,如編排和容器的開發。

随着閱讀的深入,讀者将看到運作、調查、停止和啟動、儲存以及管理容器的具體方法。開始建立容器時,我讨論了一些技巧,這些技巧将有助于讀者建立高效地建構和運作的容器鏡像。我還将帶讀者逐漸研究其他人為了生成自己的容器而建立的建構檔案(其被稱為dockerfile)。

閱讀本書大體上并不需要linux容器,或者docker容器的知識。不過,話雖如此,有些技術在docker容器内部和外部都會用到,了解其中的一些會有助于更加得心應手地使用docker。

了解一些docker運作環境的知識有助于更好地使用docker容器。docker建構在linux技術之上,并與特定的進階特性相結合,包括用于管理linux命名空間的linux容器(lxc),以及用于管理容器對系統資源(如cpu和記憶體)的通路的cgroups。

即使是與docker容器最基本的互動,也依賴于底層的linux技術。你可能聽說過docker可以運作在windows或者mac系統之上,但在這些系統上運作docker始終依賴linux虛拟機。換句話說,沒有linux就沒有docker容器。同樣,每個容器自身通常都是從基礎鏡像建構的,而這個基礎鏡像又是從特定的linux發行版建立的。

是以,如果沒有linux系統的使用經驗,你會發現,了解linux的如下方面及相關技術會很有用。

**[第一部分 開啟容器之旅

第1章 使用docker對應用進行容器化

1.1.1 容器化應用不是直接在主控端上運作的應用

1.1.2 容器化應用不是直接在虛拟機上運作的應用

1.1.3 了解容器的優點

1.1.4 了解容器化應用面臨的挑戰

<a href="https://yq.aliyun.com/articles/92088">1.2 了解容器的組成</a>

1.2.1 docker項目

1.2.2 docker hub registry

1.2.3 docker鏡像和容器

1.2.4 docker指令

<a href="https://yq.aliyun.com/articles/92089">1.3 探究容器</a>

<a href="https://yq.aliyun.com/articles/92092">1.4 小結</a>

**[第2章 搭建容器運作時環境

2.1.1 ubuntu的docker配置

2.1.2 fedora的docker配置

2.1.3 red hat enterprise linux的docker配置

2.1.4 其他作業系統的docker配置

<a href="https://yq.aliyun.com/articles/92109">2.2 容器式linux系統的docker配置</a>

2.2.1 atomic host的docker配置

2.2.2 coreos的docker配置

<a href="https://yq.aliyun.com/articles/92113">2.3 小結</a>

繼續閱讀