欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker源碼分析 (孫宏亮版) 完整版 中文pdf掃描版【27.9MB】

Docker源碼分析下載

  • 書籍大?。?span>27.9MB
  • 書籍語言:簡體中文
  • 書籍類型:國產(chǎn)軟件
  • 書籍授權(quán):免費軟件
  • 書籍類別:其它相關(guān)
  • 應(yīng)用平臺:Windows平臺
  • 更新時間:2018-06-12
  • 購買鏈接:
  • 網(wǎng)友評分:
360通過 騰訊通過 金山通過

情介紹

Docker源碼分析是一本引導(dǎo)讀者深入了解Docker實現(xiàn)原理的技術(shù)普及讀物,此書的主要目標(biāo)是通過對Docker架構(gòu)和源代碼的詳細(xì)講解和解剖,幫助讀者對Docker的底層實現(xiàn)有一個全面的理解。有需要的用戶可以免費下載學(xué)習(xí)。

作者通過大量的流程圖和代碼片段對Docker的架構(gòu)、Docker的重要模塊,特別是對Swarm、Machine和Compose這三個模塊進(jìn)行了詳細(xì)介紹和深度剖析,無論是Docker的使用者還是開發(fā)者,通過閱讀此書都可以對Docker有更深刻的理解,能夠更好的使用或者開發(fā)Docker。

作者簡介

孫宏亮是DaoCloud初創(chuàng)團(tuán)隊成員,軟件工程師,浙江大學(xué)計算機(jī)科學(xué)專業(yè)應(yīng)屆畢業(yè)研究生。

讀研期間活躍在PaaS和Docker開源社區(qū),對Cloud Foundry有深入研究和豐富實踐,擅長底層平臺代碼分析,對分布式平臺的架構(gòu)有一定經(jīng)驗,撰寫了大量有深度的技術(shù)博客。

2014年末以合伙人身份加入DaoCloud團(tuán)隊,致力于傳播以Docker為主的容器的技術(shù),推動互聯(lián)網(wǎng)應(yīng)用的容器化步伐。

Docker介紹

Docker是Docker公司開源的一個基于輕量級虛擬化技術(shù)的容器引擎項目,整個項目基于Go語言開發(fā),并遵從Apache 2.0協(xié)議。目前,Docker可以在容器內(nèi)部快速自動化部署應(yīng)用,并可以通過內(nèi)核虛擬化技術(shù)(namespaces及cgroups等)來提供容器的資源隔離與安全保障等。由于Docker通過操作系統(tǒng)層的虛擬化實現(xiàn)隔離,所以Docker容器在運行時,不需要類似虛擬機(jī)(VM)額外的操作系統(tǒng)開銷,提高資源利用率,并且提升諸如IO等方面的性能。

由于眾多新穎的特性以及項目本身的開放性,Docker在不到兩年的時間里迅速獲得諸多廠商的青睞,其中更是包括Google、Microsoft、VMware等業(yè)界行業(yè)領(lǐng)導(dǎo)者。Google在今年六月份推出了Kubernetes,提供Docker容器的調(diào)度服務(wù),而今年8月Microsoft宣布Azure上支持Kubernetes,隨后傳統(tǒng)虛擬化巨頭VMware宣布與Docker強強合作。今年9月中旬,Docker更是獲得4000萬美元的C輪融資,以推動分布式應(yīng)用方面的發(fā)展。

從目前的形勢來看,Docker的前景一片大好。本系列文章從源碼的角度出發(fā),詳細(xì)介紹Docker的架構(gòu)、Docker的運行以及Docker的卓越特性。本文是Docker源碼分析系列的第一篇———Docker架構(gòu)篇。

Docker版本信息

本文關(guān)于Docker架構(gòu)的分析都是基于Docker的源碼與Docker相應(yīng)版本的運行結(jié)果,其中Docker為最新的1.2版本。

Docker架構(gòu)分析內(nèi)容安排

本文的目的是:在理解Docker源代碼的基礎(chǔ)上,分析Docker架構(gòu)。分析過程中主要按照以下三個步驟進(jìn)行:

* Docker的總架構(gòu)圖展示

* Docker架構(gòu)圖內(nèi)部各模塊功能與實現(xiàn)分析

* 以Docker命令的執(zhí)行為例,進(jìn)行Docker運行流程闡述

docker源碼分析目錄:

贊譽

前言

第1章 Docker架構(gòu)

1.1 引言

1.2 Docker總架構(gòu)圖

1.3 Docker各模塊功能與實現(xiàn)分析

1.3.1 Docker Client

1.3.2 Docker Daemon

1.3.3 Docker Registry

1.3.4 Graph

1.3.5 Driver

1.3.6 libcontainer

1.3.7 Docker Container

1.4 Docker運行案例分析

1.4.1 docker pull

1.4.2 docker run

1.5 總結(jié)

第2章 Docker Client創(chuàng)建與命令執(zhí)行

2.1 引言

2.2 創(chuàng)建Docker Client

2.2.1 Docker命令的flag參數(shù)解析

2.2.2 處理flag信息并收集Docker Client的配置信息

2.2.3 如何創(chuàng)建Docker Client

2.3 Docker命令執(zhí)行

2.3.1 Docker Client解析請求命令

2.3.2 Docker Client執(zhí)行請求命令

2.4 總結(jié)

第3章 啟動Docker Daemon

3.1 引言

3.2 Docker Daemon的啟動流程

3.3 mainDaemon()的具體實現(xiàn)

3.3.1 配置初始化

3.3.2 flag參數(shù)檢查

3.3.3 創(chuàng)建engine對象

3.3.4 設(shè)置engine的信號捕獲

3.3.5 加載builtins

3.3.6 使用goroutine加載daemon對象并運行

3.3.7 打印Docker版本及驅(qū)動信息

3.3.8 serveapi的創(chuàng)建與運行

3.4 總結(jié)

第4章 Docker Daemon之NewDaemon實現(xiàn)

4.1 引言

4.2 NewDaemon具體實現(xiàn)

4.3 應(yīng)用配置信息

4.3.1 配置Docker容器的MTU

4.3.2 檢測網(wǎng)橋配置信息

4.3.3 查驗容器間的通信配置

4.3.4 處理網(wǎng)絡(luò)功能配置

4.3.5 處理PID文件配置

4.4 檢測系統(tǒng)支持及用戶權(quán)限

4.5 配置工作路徑

4.6 加載并配置graphdriver

4.6.1 創(chuàng)建graphdriver

4.6.2 驗證btrfs與SELinux的兼容性

4.6.3 創(chuàng)建容器倉庫目錄

4.6.4 遷移容器至aufs類型

4.6.5 創(chuàng)建鏡像graph

4.6.6 創(chuàng)建volumesdriver以及volumes graph

4.6.7 創(chuàng)建TagStore

4.7 配置Docker Daemon網(wǎng)絡(luò)環(huán)境

4.7.1 創(chuàng)建Docker網(wǎng)絡(luò)設(shè)備

4.7.2 啟用iptables功能

4.7.3 啟用系統(tǒng)數(shù)據(jù)包轉(zhuǎn)發(fā)功能

4.7.4 創(chuàng)建DOCKER鏈

4.7.5 注冊處理方法至Engine

4.8 創(chuàng)建graphdb并初始化

4.9 創(chuàng)建execdriver

4.10 創(chuàng)建daemon實例

4.11 檢測DNS配置

4.12 啟動時加載已有Docker容器

4.13 設(shè)置shutdown的處理方法

4.14 返回daemon對象實例

4.15 總結(jié)

第5章 Docker Server的創(chuàng)建

5.1 引言

5.2 Docker Server創(chuàng)建流程

5.2.1 創(chuàng)建名為"serveapi"的Job

5.2.2 配置Job環(huán)境變量

5.2.3 運行Job

5.3 ServeApi運行流程

5.4 ListenAndServe實現(xiàn)

5.4.1 創(chuàng)建router路由實例

5.4.2 創(chuàng)建listener監(jiān)聽實例

5.4.3 創(chuàng)建http.Server

5.4.4 啟動API服務(wù)

5.5 總結(jié)

第6章 Docker Daemon網(wǎng)絡(luò)

6.1 引言

6.2 Docker Daemon網(wǎng)絡(luò)介紹

6.3 Docker Daemon網(wǎng)絡(luò)配置接口

6.4 Docker Daemon網(wǎng)絡(luò)初始化

6.4.1 啟動Docker Daemon傳遞flag參數(shù)

6.4.2 解析網(wǎng)絡(luò)flag參數(shù)

6.4.3 預(yù)處理flag參數(shù)

6.4.4 確定Docker網(wǎng)絡(luò)模式

6.5 創(chuàng)建Docker網(wǎng)橋

6.5.1 提取環(huán)境變量

6.5.2 確定Docker網(wǎng)橋設(shè)備名

6.5.3 查找bridgeIface網(wǎng)橋設(shè)備

6.5.4 bridgeIface已創(chuàng)建

6.5.5 bridgeIface未創(chuàng)建

6.5.6 獲取網(wǎng)橋設(shè)備的網(wǎng)絡(luò)地址

6.5.7 配置Docker Daemon的iptables

6.5.8 配置網(wǎng)絡(luò)設(shè)備間數(shù)據(jù)報轉(zhuǎn)發(fā)功能

6.5.9 注冊網(wǎng)絡(luò)Handler

6.6 總結(jié)

第7章 Docker容器網(wǎng)絡(luò)

7.1 引言

7.2 Docker容器網(wǎng)絡(luò)模式

7.2.1 bridge橋接模式

7.2.2 host模式

7.2.3 other container模式

7.2.4 none模式

7.3 Docker Client配置容器網(wǎng)絡(luò)模式

7.3.1 使用Docker Client

7.3.2 runconfig包解析

7.3.3 CmdRun執(zhí)行

7.4 Docker Daemon創(chuàng)建容器網(wǎng)絡(luò)流程

7.4.1 創(chuàng)建容器之網(wǎng)絡(luò)配置

7.4.2 啟動容器之網(wǎng)絡(luò)配置

7.5 execdriver網(wǎng)絡(luò)執(zhí)行流程

7.5.1 創(chuàng)建libcontainer的Config對象

7.5.2 調(diào)用libcontainer的namespaces啟動容器

7.6 libcontainer實現(xiàn)內(nèi)核態(tài)網(wǎng)絡(luò)配置

7.6.1 創(chuàng)建exec.Cmd

7.6.2 啟動exec.Cmd創(chuàng)建進(jìn)程

7.6.3 為容器進(jìn)程初始化網(wǎng)絡(luò)環(huán)境

7.7 總結(jié)

第8章 Docker鏡像

8.1 引言

8.2 Docker鏡像介紹

8.3 rootfs

8.4 Union Mount

8.5 image

8.6 layer

8.7 總結(jié)

第9章 Docker鏡像下載

9.1 引言

9.2 Docker鏡像下載流程

9.3 Docker Client

9.3.1 解析鏡像參數(shù)

9.3.2 配置認(rèn)證信息

9.3.3 發(fā)送API請求

9.4 Docker Server

9.4.1 解析請求參數(shù)

9.4.2 創(chuàng)建并配置Job

9.4.3 觸發(fā)執(zhí)行Job

9.5 Docker Daemon

9.5.1 解析Job參數(shù)

9.5.2 創(chuàng)建session對象

9.5.3 執(zhí)行鏡像下載

9.6 總結(jié)

第10章 Docker鏡像存儲

10.1 引言

10.2 鏡像注冊

10.3 驗證鏡像ID

10.4 創(chuàng)建鏡像路徑

10.4.1 創(chuàng)建mnt、diff和layers子目錄

10.4.2 掛載祖先鏡像并返回根目錄

10.5 存儲鏡像內(nèi)容

10.5.1 解壓鏡像內(nèi)容

10.5.2 收集鏡像大小并記錄

10.5.3 存儲jsonData信息

10.6 注冊鏡像ID

10.7 總結(jié)

第11章 docker build實現(xiàn)

11.1 引言

11.2 docker build執(zhí)行流程

11.2.1 Docker Client與docker build

11.2.2 Docker Server與docker build

11.2.3 Docker Daemon與docker build

11.3 Dockerfile命令解析流程

11.4 Dockerfile命令分析

11.4.1 FROM命令

11.4.2 RUN命令

11.4.3 ENV命令

11.5 總結(jié)

第12章 Docker容器創(chuàng)建

12.1 引言

12.2 Docker容器運行流程

12.3 Docker Daemon創(chuàng)建容器對象

12.3.1 LookupImage

12.3.2 CheckDepth

12.3.3 mergeAndVerifyConfig

12.3.4 newContainer

12.3.5 createRootfs

12.3.6 ToDisk

12.3.7 Register

12.4 Docker Daemon啟動容器

12.4.1 setupContainerDns

12.4.2 Mount

12.4.3 initializeNetworking

12.4.4 verifyDaemonSetting

12.4.5 prepareVolumesForContainer

12.4.6 setupLinkedContainers

12.4.7 setupWorkingDirectory

12.4.8 createDaemonEnvironment

12.4.9 populateCommand

12.4.10 setupMountsForContainer

12.4.11 waitForStart

12.5 總結(jié)

第13章 dockerinit啟動

13.1 引言

13.2 dockerinit介紹

13.2.1 dockerinit初始化內(nèi)容

13.2.2 dockerinit與Docker Daemon

13.3 dockerinit執(zhí)行入口

13.3.1 createCommand分析

13.3.2 namespace.exec

13.4 dockerinit運行

13.4.1 reexec.Init()的分析

13.4.2 dockerinit的執(zhí)行流程

13.5 libcontainer的運行

13.5.1 Docker Daemon設(shè)置cgroups參數(shù)

13.5.2 Docker Daemon創(chuàng)建網(wǎng)絡(luò)棧資源

13.5.3 dockerinit配置網(wǎng)絡(luò)棧

13.5.4 dockerinit初始化mount namespace

13.5.5 dockerinit完成namespace配置

13.5.6 dockerinit執(zhí)行用戶命令Entrypoint

13.6 總結(jié)

第14章 libcontainer介紹

......

第15章 Swarm架構(gòu)設(shè)計與實現(xiàn)

......

第16章 Machine架構(gòu)設(shè)計與實現(xiàn)

......

第17章 Compose架構(gòu)設(shè)計與實現(xiàn)

......

載地址

下載錯誤?【投訴報錯】

Docker源碼分析 (孫宏亮版) 完整版 中文pdf掃描版【27.9MB】

      氣書籍

      載聲明

      ☉ 解壓密碼:www.dbjr.com.cn 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
      ☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
      ☉ 如果這個軟件總是不能下載的請在評論中留言,我們會盡快修復(fù),謝謝!
      ☉ 下載本站資源,如果服務(wù)器暫不能下載請過一段時間重試!或者多試試幾個下載地址
      ☉ 如果遇到什么問題,請評論留言,我們定會解決問題,謝謝大家支持!
      ☉ 本站提供的一些商業(yè)軟件是供學(xué)習(xí)研究之用,如用于商業(yè)用途,請購買正版。
      ☉ 本站提供的Docker源碼分析 (孫宏亮版) 完整版 中文pdf掃描版【27.9MB】資源來源互聯(lián)網(wǎng),版權(quán)歸該下載資源的合法擁有者所有。