《Docker全攻略》是2016年3月電子工業出版社出版的圖書,作者是張濤。
基本介紹
- 書名:Docker全攻略
- 作者:張濤
- 出版社:電子工業出版社
- 出版時間:2016年3月
- 頁數:540 頁
- 定價:89 元
- 開本:16 開
- ISBN:9787121282386
內容簡介,作者簡介,編輯推薦,目錄,前言,
內容簡介
Docker 是一個充滿挑戰性和趣味性的開源項目,它徹底釋放了Linux 虛擬化的威力,極大地緩解了雲計算資源供應緊張的局面。與此同時,Docker 也成倍地降低了雲計算供應成本,讓套用的部署、測試和開發變成了一件輕鬆、高效和有意思的事情。
《Docker全攻略》由淺入深,從基本原理入手,系統講解了Docker 的原理、構建與操作。同時講解了Docker 在實際生產環境中的使用,最後還探討了Docker 的底層實現技術和基於Docker 的相關開源技術。前4 章為基礎內容,供用戶理解Docker 和配置Docker 運行環境。第5 章到第9 章為Docker 基本操作,主要講解了Docker命令操作實例和Docker 命令實現原理。第10 到第12 章為Docker 高級操作,介紹了Docker 核心相關知識點,適合高級用戶參考其核心運行機制。第13 章到第15 章給出了Docker 典型套用場景和實踐案例。
《Docker全攻略》既適用於具備Linux 基礎知識的Docker 初學者,也適用於具有開發功底想深入研究Docker 核心的高級用戶。《Docker全攻略》所提供的實踐案例,可供在實際生產環境部署時借鑑。
作者簡介
張濤 TIBCO中國研發中心架構師,擁有7年C/Java開發、平台中間件和雲平台開發經驗,精通分散式服務框架、平台中間件、企業ESB匯流排和Microservices。在加入TIBCO之前,主導過多項銀行大型交易系統的設計與開發工作。目前,其參與設計和開發的TIBCO IPAAS平台已成功開始商業運行。
編輯推薦
1.內容是以一名程式開發員的角度進行編寫的,但讀者可以為其他目的而進行重用。
2.所有的代碼均來自於Docker源碼,並提供了一些讀者不易想到的技術解決方案。
3. 《Docker全攻略》根據作者多年的Docker源碼剖析經驗,以易於理解的形式,為讀者介紹Docker裡面的關鍵技術。
4.這不僅是一本如何使用Docker的入門書籍,還講述了在大多數情況下應該如何更好地發揮Docker的作用。
5.書中的部署實例全部都已經在生產環境中進行過驗證,因此,對於那些希望在案頭放一本Docker部署案例的讀者來說,本書是一份很好的參考資料。
內容提要
Docker 是一個充滿挑戰性和趣味性的開源項目,它徹底釋放了Linux 虛擬化的威力,極大地緩解了雲計算資源供應緊張的局面。與此同時,Docker 也成倍地降低了雲計算供應成本,讓套用的部署、測試和開發變成了一件輕鬆、高效和有意思的事情。
《Docker全攻略》由淺入深,從基本原理入手,系統講解了Docker 的原理、構建與操作。同時講解了Docker 在實際生產環境中的使用,最後還探討了Docker 的底層實現技術和基於Docker 的相關開源技術。前4 章為基礎內容,供用戶理解Docker 和配置Docker 運行環境。第5 章到第9 章為Docker 基本操作,主要講解了Docker命令操作實例和Docker 命令實現原理。第10 到第12 章為Docker 高級操作,介紹了Docker 核心相關知識點,適合高級用戶參考其核心運行機制。第13 章到第15 章給出了Docker 典型套用場景和實踐案例。
《Docker全攻略》既適用於具備Linux 基礎知識的Docker 初學者,也適用於具有開發功底想深入研究Docker 核心的高級用戶。《Docker全攻略》所提供的實踐案例,可供在實際生產環境部署時借鑑。
目錄
第一篇 Docker簡介
第1章 Docker的前世今生 2
1.1 什麼是LXC 2
1.2 Docker為什麼選擇了AUFS 2
1.3 Docker是如何產生的 3
第2章 Docker現狀 5
2.1 Docker套用範圍 5
2.2 Docker的優缺點 6
第3章 Docker將如何改變未來 8
第二篇 Docker基礎
第4章 如何安裝Docker 12
4.1 安裝Docker前需要知道的事 12
4.2 Linux平台安裝Docker 13
4.3 MAC/OS平台安裝Docker 15
4.4 Windows平台如何支持Docker 20
4.5 在其他平台中安裝Docker 23
第5章 Docker基本命令 28
5.1 Docker操作命令 28
5.2 Docker網路命令 83
5.3 Docker 安全命令 86
5.4 Docker 資源命令 87
5.5 Docker RestFul命令 95
5.6 Docker組件命令 190
第6章 Docker命令剖析 205
6.1 Docker操作命令 216
6.2 Docker網路命令 389
6.3 Docker安全命令 416
6.4 Docker資源命令 422
第7章 Dockerfile介紹 468
7.1 Dockerfile有什麼用 468
7.2 如何編寫Dockerfile 470
第8章 Dockerfile最佳實踐 481
第9章 Docker部署案例 489
第三篇 Docker進階
第10章 Docker運行剖析 494
10.1 Docker的生命周期 494
10.2 Docker Daemon 496
10.3 Docker CLI 498
第11章 Docker核心講解 500
11.1 Docker背後的Namespace 500
11.2 Docker的檔案系統 505
11.3 Docker的image管理 508
第12章 Docker資源調度 513
12.1 Docker如何管理資源 513
12.2 Docker資源管理器 516
第四篇 Docker生態圈
第13章 Docker的雲生態環境 520
13.1 Docker的開發語言 520
13.2 支持Docker的開源組件 525
13.3 CoreOS、Vagrant和Amazon如何支持Docker 526
第五篇 Docker案例
第14章 基於Amazon的Docker部署案例 530
第15章 基於CoreOS的Docker部署案例 532
前言
自從Docker橫空出世以來,有關Docker的討論就一直非常熱烈,並湧現出了一批優秀的文檔。但在Docker開發方面,卻大多限於Docker如何使用,更傾向於運維層面。因此使很多人誤認為Docker就是虛擬化容器,最多再有點資源限制操作。但這卻是Docker眾多功能中的冰山一角,並非全部。
本書的寫作目的不僅是在技術層面深入分析Docker背後的技術原理和設計思想,更想結合筆者所在團隊的工作經驗,理清Docker的技術脈絡和核心原理,同時附加Docker生態圈的實際案例,以期對開發運維人員、容器雲服務提供商以及Docker技術愛好者在技術選型、技術路線規劃上有所幫助。
筆者所在團隊從2014年開始關注Docker,並且開始深入研究Docker。當時Docker還是一個基於Local模式的虛擬化工具,並沒有當前豐富的生態圈技術。我們團隊基於Docker打造了一款企業級的私有雲平台,是國內最先使用Docker的一批人。除了感受到Docker在效率方面所帶來的革命性提高外,還不得不忍受Docker與企業級虛擬化工具之間的差距。
但隨著Docker的不斷發展和完善,我們真真切切地感受到了Docker是如何從一個鮮有耳聞的名詞變成了虛擬化首選工具。基於Docker的雲平台解決方案如雨後春筍般湧現,基於Docker的中國本地化解決方案也開始逐步出現,各類國內鏡像加速器和倉庫也開始層出不窮。
當前,中國網際網路已進入了“網際網路+”時代,雲平台即將進入爆發式發展的時代。在“網際網路+”這樣一個以軟體連線人與人、連線人與企業、連線企業與企業的時代,Docker自然是技術選型的不二之選。因此在可預見的未來,中國IT界自當需要大量的Docker開發人員,而本書的目的就是希望可以為有志做Docker開發的工程師提供一些幫助。
本書分為三部分,以Docker1.7源碼為基礎。由淺入深,從介紹Docker的使用入手,逐步演進到Docker的功能實現,最後是Docker的核心機制。
第一部分包括第1章至第5章。第1章至第3章介紹了Docker技術背景,使讀者能夠初步了解Docker的來龍去脈和Docker的未來發展方向。第4章介紹了在不同平台中如何安裝Docker,而第5章是第一部分的重點章節,介紹了Docker各種命令的使用方式。
第二部分包括第6章至第9章。第二部分深入講解了Docker各功能實現方法以及相關技術。第6章介紹了Docker所有功能的實現方式,例如Docker網路命令、Docker安全命令、Docker資源命令等。Dockerfile作為構建鏡像的唯一方式,其用法在第7章中有詳細介紹,而第8章則介紹了Dockerfile的最佳實踐。第9章通過實際的Nginx部署案例來介紹Docker的使用。
第三部分包括第10章至第第15章。第三部分深入講解了Docker核心機制。第10章,第11章和第12章分別從Docker生命周期、namespace和資源管理等方面入手,完完整整地講解了Docker的核心運行方式。第13章、第14章和第15章則通過基於Amazon和Coreos的實際部署案例介紹了Docker生態圈。
對於能夠編寫這么一本用來介紹Docker核心的書,筆者感到非常榮幸。筆者在此向所有在編寫本書期間提供幫助的朋友們表示最誠摯的謝意。沒有朋友們的幫助,我一人是無法順利完成這項工作的。
感謝與我一直奮戰在雲平台開發一線的各位兄弟,是你們為我提供了眾多寫作靈感,並且提供了大量的Docker案例。
感謝Jack Gao(高建國)、Tracy LI(李星旺)、Echo Guo(郭靜田)在我寫作本書期間提供的無私幫助,正是由於你們的幫助,才能支持我一直寫完此書。
在這裡需要特別感謝我的妻子彭歡。她毫無怨言的忍受了我寫書時無法陪伴她的日日夜夜,同時也感謝她無私照顧我的日子,最後感謝上天將她送給了我。
最後感謝所有人的努力,才得以讓此書順利面世。本人希望此書可以為Docker技術布道之路貢獻一份微薄的力量。
張濤
2016年2月21日
北京