買這商品的人也買了...
-
$450$338 -
$480$374 -
$580$435 -
$520$442 -
$320$250 -
$352洞悉敏捷
-
$680$537 -
$580$458 -
$281Docker 容器實戰:原理、架構與應用
-
$352Node.js 微服務 (Developing Microservices with Node.js)
-
$454每天 5分鐘玩轉 OpenStack
-
$580$522 -
$403阻擊黑客:技術、策略與案例
-
$433數據天才:數據科學家修煉之道
-
$403ELK Stack 權威指南, 2/e
-
$454深入理解 Redis
-
$332算法神探 : 一部谷歌首席工程師寫的CS小說
-
$720$612 -
$590$460 -
$480$360 -
$390$308 -
$500$375 -
$505深入理解 ES6
-
$352Docker從入門到實戰(Introduction and Advanced Usage of Docker)
-
$450$356
相關主題
商品描述
作為引領近幾年容器虛擬化領域的技術,Docker的發展方興未艾。但由於其出現不過數年,關於它的資料,特別是中文資料仍然相對匱乏,導致國內許多開發者對其感到陌生。本書正是以佈道Docker為理念,由淺入深地從闡述Docker的基本概念、講解常規使用方法、進行操作實踐的演示、展示提高和進階用法、剖析內部原理和底層架構等多個方面,全方面的展現Docker所具有的魅力。本書由概念及至實踐,從不同方面向讀者展現了Docker,實用性非常強,既可以作為一本學習Docker的入門教材,也能作為進行Docker操作實踐的說明書,甚至可以作為提高和進階的知識寶庫。不論是對Docker認知程度不同,有著不同知識儲備的人,還是處於程序軟件研發部署流程中的開發人員、測試人員或運維人員,本書都有著很強的可閱讀性。
作者簡介
熊昌隆,資深架構師,Web全棧開發者,知名博主,Beaver框架作者,開源小組Funcuter的發起者,致力於新興技術的研究和推廣。早年參與智慧路由的研究,多項研究成果影響了家用路由器的發展。
設計實現的Beaver框架,已經應用於千萬級系統的底層程序架構中。發起組建的Funcuter開源小組,旨在聚集國內的優秀開源項目和開發者,目前已經擁有多個開源項目。
近年來一直致力於前沿技術的研究和推廣,希望讓更多的開發者更輕鬆的接觸、了解最新興科技成果,並應用於開發實踐中。
目錄大綱
第一部分基礎篇
第1章初識Docker 1
1.1虛擬化2
1.1.1虛擬化技術2
1.1.2虛擬化的分類4
1.2容器技術與Docker 6
1.2.1容器技術6
1.2.2 Docker簡介8
1.2 .3改變世界的發明10
1.3 Docker的安裝10
1.3.1在Ubuntu中安裝Docker 11
1.3.2在CentOS中安裝Docker 12
1.3.3在Windows中安裝Docker 13
1.3.4在Mac OS中安裝Docker 15
1.3 .5在其他系統中安裝Docker 16
1.4 Docker的優勢17
1.4.1革命性的虛擬化方案17
1.4.2高效的容器技術18
1.4.3社區的力量19
1.5 Docker的應用場景20
1.5.1超短時間部署運行20
1.5.2節約遷移時間21
1.6本章小結21
第2章鏡像與倉庫22
2.1鏡像的概念22
2.1.1聯合文件系統22
2.1.2 Docker中的鏡像23
2.1.3鏡像的分層結構24
2.1.4鏡像的寫時復制25
2.2使用和管理鏡像26
2.2.1獲取鏡像26
2.2.2列出鏡像28
2.2.3獲得鏡像的詳細信息28
2.2.4刪除鏡像31
2.2.5鏡像的遷移32
2.3 Docker Hub 33
2.3.1鏡像倉庫33
2.3.2 Docker Hub 34
2 .3.3註冊Docker Hub賬號35
2.3.4搜索鏡像36
2.3.5共享自動構建鏡像38
2.4搭建私有倉庫40
2.4.1鏡像分發服務40
2.4.2 Docker Registry HTTP API 41
2.4.3部署私有倉庫42
2.5本章小結44
第3章管理和使用容器45
3.1管理容器45
3.1.1創建容器45
3.1.2容器的啟動過程48
3.1.3列出容器49
3.1.4容器的命名51
3.1.5啟動和停止52
3.1 .6暫停和恢復53
3.1.7重啟容器54
3.1.8刪除容器55
3.2連接到容器55
3.2.1查看進程信息56
3.2.2查看容器信息56
3.2.3容器日誌62
3.2.4銜接到容器63
3.2.5在容器中執行命令64
3.3容器的保存與遷移65
3.3.1提交容器更改65
3.3.2容器的導入/導出68
3.4本章小結70
第4章數據卷與網絡71
4.1數據卷71
4.1. 1關於數據卷71
4.1.2數據卷的特點72
4.1.3創建數據卷73
4.1.4掛載數據卷74
4.1.5刪除數據卷76
4.2數據卷容器77
4.2.1關於數據卷容器77
4.2. 2創建數據卷容器78
4.2.3連接數據卷容器79
4.2.4數 據卷的遷移80
4.3網絡基礎82
4.3.1網絡簡介82
4.3.2查看網絡配置83
4.4網絡訪問85
4.4.1宿主機端口映射85
4.4.2容器連接87
4.5本章小結90
第5章製作鏡像91
5.1了解Dockerfile 91
5.1.1 Dockerfile簡介92
5.1.2使用Dockerfile創建鏡像94
5.2基礎指令96
5.2.1 FROM 97
5.2.2 MAINTAINER 97
5.3控制指令97
5.3.1 RUN 97
5.3.2 WORKDIR 99
5.3.3 ONBUILD 99
5.4引入指令100
5.4.1 ADD 100
5.4.2 COPY 102
5.5執行指令102
5.5.1 CMD 102
5.5.2 ENTRYPOINT 104
5.6配置指令107
5.6.1 EXPOSE 108
5.6.2 ENV 108
5.6.3 LABEL 109
5.6. 4 USER 110
5.6.5 ARG 111
5.6.6 STOPSIGNAL 112
5.6.7 SHELL 113
5.7特殊用法113
5.7.1環境變量113
5.7.2指令解析114
5.7.3忽略文件116
5.8本章小結117
第二部分實踐篇
第6章SSH服務118
6.1在Docker中使用SSH 118
6.1.1 SSH簡介119
6.1.2 SSH使用方法簡介119
6.1.3數據捲管理容器121
6.1.4使用SSH服務容器122
6.2構建SSH服務鏡像124
6.2. 1構建方式比較124
6.2.2通過提交 構建125
6.2.3使用Dockerfile構建127
6.3本章小結131
第7章Web服務器132
7.1 Web服務簡介132
7.1.1萬維網與網站132
7.1.2 Web服務133
7.1.3 Web服務程序135
7.2 Apache 135
7.2.1 Apache簡介135
7.2.2安裝Apache 136
7.2.3構建Apache鏡像139
7.2.4測試Apache容器142
7.3 Nginx 143
7.3.1關於Nginx 143
7.3.2安裝Nginx 144
7.3.3構建Nginx鏡像146
7.3.4測試Nginx鏡像148
7.4 Tomcat 148
7.4.1 Tomcat簡介149
7.4.2安裝Tomcat 149
7.4.3構建Tomcat鏡像152
7.5本章小結153
第8章數據庫程序155
8.1 MySQL 155
8.1.1 MySQL簡介156
8.1.2安裝MySQL 156
8.1 .3構建MySQL鏡像162
8.1.4測試MySQL容器164
8.2 MongoDB 166
8.2.1 MongoDB簡介166
8.2.2安裝MongoDB 167
8.2.3構建MongoDB鏡像171
8.2.4測試MongoDB容器173
8.3本章小結176
第9章緩存工具177
9.1 Memcached 178
9.1.1 Memcached簡介178
9.1.2安裝Memcached 179
9.1.3構建Memcached鏡像184
9.1.4測試Memcached容器186
9.2 Redis 188
9.2.1 Redis簡介188
9.2.2安裝Redis 18 8
9.2.3構建Redis鏡像193
9.2.4測試Redis容器195
9.3本章小結196
第10章動態處理程序197
10.1 Java 197
10.1.1 Java簡介198
10.1.2安裝Java 198
10.1.3構建Java鏡像204
10.1. 4測試Java容器206
10.2 PHP 207
10.2.1 PHP簡介207
10.2.2安裝PHP 208
10.2.3構建PHP鏡像214
10.2.4測試PHP容器216
10.3 Python 217
10.3.1 Python簡介217
10.3.2安裝Python 218
10.3 .3構建Python鏡像223
10.3.4測試Python容器224
10.4 Node.js 225
10.4.1 Node.js簡介225
10.4.2安裝Node.js 226
10.4.3構建Node.js鏡像228
10.4.4測試Node.js容器230
10.5本章小結231
第11章綜合演練232
11.1演練目標232
11.1.1目標概述232
11.1.2代碼編寫233
11.2環境搭建237
11.2.1準備鏡像237
11.2.2程序配置239
11.3項目運行248
11.3. 1啟動容器248
11.3.2測試項目249
11.4本章小結253
第三部分提高篇
第12章網絡進階254
12.1網絡實現254
12.1.1容器網絡基礎255
12.1.2網絡模型257
12.2 Docker中的網絡258
12.2 .1默認網絡25 8
12.2.2自定義網絡261
12.2.3容器與外部通信262
12.2.4容器間通信264
12.3網絡實踐265
12.3.1管理容器網絡265
12.3.2容器連接網絡267
12.3.3配置docker0網橋269
12.3 .4自定義網橋271
12.3.5配置DNS 271
12.3.6使用IPv6 273
12.4本章小結274
第13章安全加固275
13.1深入理解Docker安全275
13.1.1命名空間隔離276
13.1.2資源控制組277
13.1 .3內核能力機制277
13.2資源使用限制278
13.2.1通過控制組限制278
13.2.2通過ulimit限制280
13.2.3網絡訪問限制280
13.3校驗與監控281
13.3.1鏡像簽名281
13.3.2運行狀態監控283
13.4聯級防護284
13.4.1組合虛擬化284
13.4.2文件系統安全284
13.5內核安全技術285
13.5.1 Capability 286
13.5.2 SELinux 287
13.5.3 AppArmor 288
13.6本章小結289
第14章Docker API 290
14.1關於Docker API 290
14.1.1通用操作接口290
14.1.2關於RESTful 291
14.1.3 Docker API的優勢292
14.1.4 Docker API的分類293
14.2使用Docker Remote API 293
14 .2.1關於Docker Remote API 294
14.2.2 Docker Remote API的版本299
14.2.3通過Remote API列出容器300
14.2.4通過Remote API列出鏡像302
14.3使用Docker Registry API 303
14.3.1關於Docker Registry API 304
14.3.2 Docker Registry API的主要功能304
14.3.3 Docker Registry API的版本305
14.3.4通過Registry API拉取鏡像306
14.3.5通過Registry API推送鏡像307
14.4本章小結309
第15章管理工具310
15.1 Docker Compose 310
15.1.1 Docker Compose簡介311
15.1.2安裝Docker Compose 313
15.1.3 Docker Compose配置文件314
15.1.4常用的Docker Compose命令315
15.2 Docker Machine 318
15.2.1 Docker Machine簡介318
15.2.2安裝Docker Machine 320
15.2.3 Docker Machine常見命令321
15.3 Docker Swarm 322
15.3.1 Docker Swarm簡介322
15.3.2 Docker Swarm結構323
15.3.3使用Docker Swarm 323
15.3.4 Docker Swarm常見命令325
15.4本章小結327
第16章Docker的技術架構328
16.1命名空間328
16.1.1關於Linux命名空間328
16.1.2命名空間的系統 用329
16.1.3命名空間的分類330
16.2控制組332
16.2.1關於Linux控制組332
16.2.2 Cgroups的組成333
16.2.3容器與控制組334
16.3聯合文件系統336
16.3.1關於UFS 336
16.3. 2 Docker中的UFS 337
16.4 Docker Engine架構338
16.4.1 Docker Engine的組成結構338
16.4.2 Docker Daemon 339
16.4.3 Docker CLI 342
16.5本章小結344