-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
12/1 新書到! 11/25 新書到! 11/17 新書到! 11/11 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Docker實踐 第2版

( 簡體 字)
作者:[英]伊恩·米爾(Ian Miell)類別:1. -> 作業系統 -> Docker
譯者:
出版社:人民郵電出版社Docker實踐 第2版 3dWoo書號: 53520
詢問書籍請說出此書號!

有庫存
NT售價: 495

出版日:10/1/2020
頁數:400
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787115541109
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
作者序:

譯者序:

前言:

內容簡介:

本書由淺入深地講解了Docker的相關內容,涵蓋從開發環境到DevOps流水線,再一路到生產環境的整個落地過程以及相關的實用技巧。書中介紹Docker的核心概念和架構,以及將Docker和開發環境有機、高效地結合起來的方法,包括背Docker用作輕量級虛擬機、構建容器、宿主機編排、配置管理、精簡鏡像等。不僅如此,本書還通過“問題-解決方案-討論”的形式,將Docker如何融入DevOps流水線、如何在生產環境落地等一系列難題拆解成114個相關的實用技巧,為讀者提供解決方案以及一些細節和技巧方面的實踐經驗。閱讀本書,讀者學到的不只是Docker,還包括持續集成、持續交付、構建和鏡像管理、容器編排等相關領域的一線生產經驗。本書編寫時一些案例參考的Docker版本是Docker 1.13。
本書要求讀者具備一定的容器管理和運維的基礎知識,適合想要將Docker投入實踐的相關技術人員閱讀,尤其適合具有中高級DevOps和運維背景的讀者閱讀。
目錄:

第一部分 Docker基礎
第1章 Docker初探 3
1.1 Docker是什么以及為什么用Docker 4
1.1.1 Docker是什么 4
1.1.2 Docker有什么好處 6
1.1.3 關鍵的概念 7
1.2 構建一個Docker應用程序 9
1.2.1 創建新的Docker鏡像的方式 10
1.2.2 編寫一個Dockerfile 11
1.2.3 構建一個Docker鏡像 12
1.2.4 運行一個Docker容器 13
1.2.5 Docker分層 16
1.3 小結 17
第2章 理解Docker——深入引擎室 18
2.1 Docker的架構 18
2.2 Docker守護進程 20
技巧1 向世界開放Docker守護進程 20
技巧2 以守護進程方式運行容器 22
技巧3 將Docker移動到不同分區 25
2.3 Docker客戶端 26
技巧4 使用socat監控Docker API流量 26
技巧5 在瀏覽器中使用Docker 29
技巧6 使用端口連接容器 31
技巧7 允許容器通信 33
技巧8 鏈接容器實現端口隔離 34
2.4 Docker注冊中心 36
技巧9 建立一個本地Docker注冊中心 37
2.5 Docker Hub 38
技巧10 查找并運行一個Docker鏡像 39
2.6 小結 41
第二部分 Docker與開發
第3章 將Docker用作輕量級虛擬機 45
3.1 從虛擬機到容器 46
技巧11 將虛擬機轉換為容器 46
技巧12 類宿主機容器 49
技巧13 將一個系統拆成微服務容器 51
技巧14 管理容器內服務的啟動 54
3.2 保存和還原工作成果 57
技巧15 “保存游戲”的方式:廉價的源代碼管理 57
技巧16 給Docker打標簽 59
技巧17 在Docker Hub上分享鏡像 62
技巧18 在構建時指向特定的鏡像 64
3.3 進程即環境 65
技巧19 “保存游戲”的方式:在2048里獲勝 65
3.4 小結 67
第4章 構建鏡像 68
4.1 構建鏡像 68
技巧20 使用ADD指令將文件注入鏡像里 68
技巧21 不帶緩存的重新構建 71
技巧22 清除緩存 73
技巧23 使用build-args實現智能的緩存清除 74
技巧24 使用ADD指令實現智能的緩存清除 78
技巧25 在容器里設置正確的時區 81
技巧26 語言環境管理 83
技巧27 image-steper遍歷鏡像分層 86
技巧28 ONBUILD指令和golang 90
4.2 小結 93
第5章 運行容器 94
5.1 運行容器 94
技巧29 在Docker里運行GUI 94
技巧30 檢查容器 97
技巧31 干凈地“殺死”容器 98
技巧32 使用Docker Machine置備Docker宿主機 100
技巧33 帶通配符的DNS 104
5.2 卷——持久化問題 105
技巧34 Docker卷——持久化的問題 105
技巧35 通過Resilio Sync 實現的分布式卷 107
技巧36 保留容器的bash歷史 109
技巧37 數據容器 111
技巧38 使用SSHFS掛載遠程卷 113
技巧39 通過NFS共享數據 115
技巧40 開發工具容器 118
5.3 小結 119
第6章 Docker日常 120
6.1 保持陣型 120
技巧41 運行Docker時不加sudo 120
技巧42 清理容器 121
技巧43 清理卷 123
技巧44 無須停止容器,從容器里解綁 125
技巧45 使用Portainer來管理Docker守護進程 125
技巧46 生成Docker鏡像的依賴圖 126
技巧47 直接行動:在容器上執行命令 129
技巧48 你在容器里嗎 130
6.2 小結 131
第7章 配置管理,讓一切井然有序 132
7.1 配置管理和Dockerfile 132
技巧49 使用ENTRYPOINT創建可靠的定制工具 133
技巧50 在構建中指定版本來避免軟件包的漂移 134
技巧51 用perl -p -i -e替換文本 136
技巧52 鏡像的扁平化 138
技巧53 用Alien管理外來軟件包 140
7.2 傳統配置管理工具與Docker 142
技巧54 傳統方式:搭配make和Docker 142
技巧55 借助Chef Solo構建鏡像 145
7.3 小即是美 149
技巧56 讓鏡像變得更小的技巧 149
技巧57 通過BusyBox和Alpine精簡Docker鏡像 151
技巧58 Go模型的最小容器 153
技巧59 使用inotifywait給容器瘦身 156
技巧60 大也可以美 159
7.4 小結 161
第三部分 Docker與DevOps
第8章 持續集成:加快開發流水線 165
8.1 Docker Hub自動化構建 165
技巧61 使用Docker Hub工作流 166
8.2 更有效的構建 169
技巧62 使用eatmydata為I/O密集型構建提速 169
技巧63 設置一個軟件包緩存用于加快構建速度 171
技巧64 容器里的無頭Chrome 174
技巧65 在Docker內部運行Selenium測試 176
8.3 容器化CI過程 181
技巧66 在一個Docker容器里運行Jenkins主服務器 181
技巧67 包含一個復雜的開發環境 183
技巧68 使用Jenkins的Swarm插件擴展CI 188
技巧69 安全地升級容器化Jenkins服務器 191
8.4 小結 195
第9章 持續交付:與Docker原則完美契合 196
9.1 在CD流水線上與其他團隊互動 197
技巧70 Docker契約:減少摩擦 197
9.2 推動Docker鏡像的部署 199
技巧71 手動同步注冊中心鏡像 200
技巧72 通過受限連接交付鏡像 201
技巧73 以TAR文件方式共享Docker對象 203
9.3 為不同環境配置鏡像 205
技巧74 使用etcd通知容器 205
9.4 升級運行中的容器 208
技巧75 使用confd啟用零停機時間切換 209
9.5 小結 213
第10章 網絡模擬:無痛的現實環境測試 214
10.1 容器通信:超越手工鏈接 214
技巧76 一個簡單的Docker Compose集群 214
技巧77 一個使用Docker Compose的SQLite服務器 218
10.2 使用Docker模擬真實世界的網絡 222
技巧78 使用Comcast模擬有問題的網絡 223
技巧79 使用Blockade模擬有問題的網絡 226
10.3 Docker和虛擬網絡 230
技巧80 創建另一個Docker虛擬網絡 231
技巧81 使用Weave建立一個基底網絡 234
10.4 小結 237
第四部分 從單機到云的編排
第11章 容器編排入門 241
11.1 簡單的單臺宿主機 242
技巧82 使用systemd管理宿主機上的容器 242
技巧83 編排宿主機上的容器的啟動 246
11.2 手動多宿主機Docker 249
技巧84 使用Helios手動管理多宿主機Docker 249
11.3 服務發現:我們有什么 254
技巧85 使用Consul發現服務 255
技巧86 使用Registrator進行自動化服務注冊 262
11.4 小結 264
第12章 使用Docker實現數據中心即操作系統 265
12.1 多宿主機Docker 265
技巧87 swarm模式的無縫Docker集群 265
技巧88 使用Kubernetes集群 269
技巧89 在pod內訪問Kubernetes API 274
技巧90 使用OpenShift在本地運行AWS API 277
技巧91 在Mesos上構建框架 283
技巧92 使用Marathon細粒度管理Mesos 290
12.2 小結 293
第13章 Docker平臺 294
13.1 組織選擇的因素 295
13.1.1 投放到市場的時間 297
13.1.2 購買與構建 297
13.1.3 單體與零散 298
13.1.4 開源與授權 299
13.1.5 安全態度 299
13.1.6 消費者獨立性 300
13.1.7 云策略 300
13.1.8 組織結構 300
13.1.9 多平臺? 300
13.1.10 組織選擇因素結論 301
13.2 采用Docker時需要考慮的方面 301
13.2.1 安全與控制 301
13.2.2 構建和分發鏡像 307
13.2.3 運行容器 309
13.3 供應商、組織和產品 311
13.3.1 云原生計算基金會(CNCF) 311
13.3.2 Docker公司 313
13.3.3 谷歌 313
13.3.4 微軟 313
13.3.5 亞馬遜 314
13.3.6 Red Hat 314
13.4 小結 315
第五部分 生產環境中的Docker
第14章 Docker與安全 319
14.1 Docker訪問權限及其意味著什么 319
你在乎嗎 320
14.2 Docker中的安全手段 320
技巧93 限制能力 321
技巧94 掃描一個“壞”Docker鏡像 324
14.3 保衛對于Docker的使用 325
技巧95 Docker實例上的HTTP認證 326
技巧96 保護Docker API 329
14.4 Docker外部的安全性 333
技巧97 使用DockerSlim來減少容器攻擊者的攻擊面 333
技巧98 去除在構建中加入的密碼 338
技巧99 OpenShift—— 一個應用程序平臺即服務 342
技巧100 使用安全選項 350
14.5 小結 357
第15章 一帆風順:在生產環境中運行Docker 358
15.1 監控 358
技巧101 記錄容器的日志到宿主機的syslog 358
技巧102 記錄Docker日志的輸出 361
技巧103 使用cAdvisor監控容器 363
15.2 資源控制 365
技巧104 限制容器可以運行的內核 365
技巧105 給重要的容器更多CPU 366
技巧106 限制容器的內存使用 367
15.3 Docker的系統管理員用例 369
技巧107 使用Docker運行cron作業 369
技巧108 通過“保存游戲”的方法來備份 372
15.4 小結 374
第16章 Docker生產環境實踐——應對各項挑戰 375
16.1 性能:不能忽略宿主機 375
技巧109 從容器訪問宿主機資源 375
技巧110 禁用內存溢出殺手 379
16.2 在容器出問題時——調試Docker 381
技巧111 使用nsenter調試容器的網絡 381
技巧112 無須重新配置,使用tcpflow進行實時調試 384
技巧113 調試在特定宿主機上出問題的容器 386
技巧114 從鏡像中提取文件 389
16.3 小結 391
附錄A 安裝并使用Docker 392
A.1 虛擬機的方式 392
A.2 連接到外部Docker服務器的Docker客戶端 393
A.3 原生Docker客戶端和虛擬機 393
Windows上的Docker 393
A.4 獲得幫助 395
附錄B Docker配置 396
B.1 配置Docker 396
B.2 重啟Docker 397
B.2.1 使用systemctl重啟 397
B.2.2 重啟服務 398
附錄C Vagrant 399
C.1 設置 399
C.2 圖形用戶界面 399
C.3 內存 400
序: