Docker容器實(shí)戰(zhàn):原理架構(gòu)與應(yīng)用是一本Docker快速入門書籍,由廖煜編著。本書內(nèi)容豐富翔實(shí),從實(shí)踐出發(fā),介紹在實(shí)際應(yīng)用場景中應(yīng)該如何定制Docker,并詳細(xì)介紹鏡像制作的步驟、指令和最佳實(shí)踐,各種存儲驅(qū)動的區(qū)別和使用場合,以及Docker Daemon各種擴(kuò)展功能和接口的使用方法,并列舉了典型鏡像的使用方法。書中內(nèi)容涵蓋了Docker Daemon、Docker存儲驅(qū)動、Docker鏡像倉庫的所有配置選項(xiàng),并對每個(gè)選項(xiàng)都有詳細(xì)的介紹,非常適合軟件開發(fā)人員,網(wǎng)站運(yùn)維人員和計(jì)算機(jī)及相關(guān)專業(yè)在校本科或碩士生等人下載閱讀。
內(nèi)容介紹
《Docker容器實(shí)戰(zhàn):原理架構(gòu)與應(yīng)用》介紹了Docker容器技術(shù)的背景和基本原理,以及如何定制化符合用戶要求的Docker Daemon,增加安全性、提高效率……鏡像提供了千差萬別的服務(wù),每一個(gè)鏡像都是要滿足用戶的某種需求。如何制作出體積小、安全性高、可配置性強(qiáng)的鏡像是困擾很多開發(fā)者的問題,書中詳細(xì)介紹了相關(guān)解決方案。本書的最后還介紹了各種流行的開源項(xiàng)目,讓讀者了解Docker生態(tài)圈。
pdf特色
涵蓋的主要內(nèi)容包括云計(jì)算簡介、Docker 的安裝、使用 Docker、Docker 深入解析容器的網(wǎng)絡(luò)、容器的數(shù)據(jù)、鏡像倉庫、鏡像和容器的存儲結(jié)構(gòu)。
定制 Docker Daemon,如何編寫 DockerfileDockerfile 最佳實(shí)踐、使用容器提供服務(wù)。
建立私有鏡像倉庫、Docker 常見問題等。
章節(jié)目錄
第1篇 Docker基礎(chǔ)知識介紹
第1章 云計(jì)算簡介 2
1.1 虛擬化技術(shù)的分類和歷史 3
1.1.1 硬件級虛擬化歷史 3
1.1.2 操作系統(tǒng)級虛擬化歷史 4
1.2 云計(jì)算服務(wù)模式 4
1.3 Docker介紹 5
1.3.1 Docker主要解決什么問題 6
1.3.2 Docker的歷史 6
1.3.3 Docker是什么 6
1.4 Linux快速入門 7
1.4.1 選取什么發(fā)行版本 7
1.4.2 使用圖形界面還是命令行界面 8
1.4.3 英文還是中文 8
1.4.4 安裝Ubuntu 14.04 8
1.4.5 Linux常用工具 11
1.4.6 啟用root 用戶 12
1.4.7 使用vim 12
1.4.8 配置網(wǎng)絡(luò) 13
1.4.9 啟用SSH Server 13
1.4.10 通過客戶端遠(yuǎn)程連接Linux主機(jī) 14
1.4.11 免密碼登錄Linux主機(jī) 15
1.4.12 安裝軟件 15
1.4.13 公有云主機(jī)快速入門 16
1.4.14 購買云主機(jī) 17
1.4.15 連接到云主機(jī) 19
1.5 習(xí)題 21
第2章 Docker的安裝 22
2.1 在Ubuntu下安裝Docker 22
2.1.1 前置條件 22
2.1.2 更新apt源 23
2.1.3 Ubuntu 14.04特殊處理 24
2.1.4 正式安裝 24
2.2 在CentOS下安裝 26
2.2.1 前置條件 26
2.2.2 更新yum 26
2.2.3 添加倉庫 26
2.2.4 正式安裝 26
2.3 通過Ghostcloud進(jìn)行安裝 27
2.3.1 注冊Ghostcloud賬號 28
2.3.2 接入新主機(jī) 28
2.3.3 獲取安裝腳本 28
2.3.4 驗(yàn)證Docker安裝是否成功 30
2.3.5 運(yùn)行第一個(gè)容器 30
2.4 通過官方的安裝腳本安裝 31
2.5 在非Linux系統(tǒng)下安裝Docker 32
2.6 習(xí)題 32
第3章 使用Docker 33
3.1 運(yùn)行hello-world 33
3.2 容器和鏡像 35
3.2.1 什么是容器 35
3.2.2 什么是鏡像 35
3.2.3 容器和鏡像的關(guān)系 36
3.3 Docker入門操作 36
3.3.1 查看Docker基本信息 36
3.3.2 下載第一個(gè)基礎(chǔ)鏡像 37
3.3.3 運(yùn)行一個(gè)含shell終端的容器 38
3.3.4 查看容器運(yùn)行 38
3.3.5 運(yùn)行長時(shí)間容器 38
3.3.6 查看所有容器 39
3.4 習(xí)題 40
第2篇 Docker的基本使用
第4章 Docker深入解析 42
4.1 Docker的架構(gòu) 42
4.2 Docker如何工作 43
4.2.1 Docker Image工作方式 43
4.2.2 Docker Registry工作方式 44
4.2.3 容器工作方式 44
4.2.4 底層的技術(shù) 45
4.3 Docker Client和Daemon 46
4.4 通過容器運(yùn)行Web應(yīng)用 47
4.4.1 使用國內(nèi)倉庫 48
4.4.2 拉取apache-php鏡像 48
4.4.3 運(yùn)行鏡像 48
4.4.4 網(wǎng)頁訪問 48
4.4.5 修改頁面內(nèi)容 49
4.4.6 持久化容器 50
4.5 鏡像制作 50
4.5.1 查看本機(jī)鏡像 50
4.5.2 獲取鏡像的三種方式 51
4.5.3 查找DockerHub鏡像 51
4.5.4 查找其他倉庫鏡像 52
4.5.5 push鏡像 54
4.5.6 根據(jù)Dockerfile編譯鏡像 55
4.5.7 刪除鏡像 56
4.6 docker run命令 56
4.6.1 docker run的語法格式 56
4.6.2 前后臺運(yùn)行 57
4.6.3 容器的標(biāo)識 57
4.6.4 PID設(shè)置 58
4.6.5 UTS(--uts)設(shè)置 58
4.6.6 IPC(--ipc)設(shè)置 59
4.6.7 網(wǎng)絡(luò)設(shè)置 59
4.6.8 重啟策略(--restart) 60
4.6.9 Clean up (--rm) 61
4.6.10 CGroups控制 61
4.6.11 特權(quán)模式和Capabilities 61
4.6.12 日志驅(qū)動(--log-driver) 62
4.6.13 覆蓋image的默認(rèn)參數(shù) 62
4.7 習(xí)題 63
第5章 容器的網(wǎng)絡(luò) 64
5.1 容器自帶網(wǎng)絡(luò) 64
5.2 網(wǎng)絡(luò)詳情 65
5.3 用戶自定義網(wǎng)絡(luò) 67
5.3.1 橋接網(wǎng)絡(luò) 67
5.3.2 Overlay網(wǎng)絡(luò) 68
5.4 習(xí)題 71
第6章 容器的數(shù)據(jù) 72
6.1 數(shù)據(jù)卷 72
6.1.1 創(chuàng)建一個(gè)數(shù)據(jù)卷 72
6.1.2 映射一個(gè)外部卷 73
6.2 使用數(shù)據(jù)型容器 73
6.3 備份、還原和遷移數(shù)據(jù)卷 73
6.4 容器和代碼進(jìn)行關(guān)聯(lián) 74
6.5 習(xí)題 74
第7章 鏡像倉庫 75
7.1 倉庫相關(guān)的Docker命令 75
7.1.1 登錄 75
7.1.2 查找 76
7.1.3 拉取 76
7.1.4 提交 76
7.2 習(xí)題 76
第3篇 Docker的高級使用
第8章 鏡像和容器的存儲結(jié)構(gòu) 78
8.1 鏡像、容器和存儲驅(qū)動的關(guān)系 78
8.1.1 鏡像和鏡像層 78
8.1.2 鏡像存儲方式 80
8.1.3 一個(gè)遷移例子 81
8.1.4 容器和容器層 82
8.1.5 寫時(shí)復(fù)制策略 83
8.1.6 使用共享技術(shù)減小鏡像體積 83
8.1.7 使用復(fù)制技術(shù)加快容器啟動時(shí)間 86
8.1.8 數(shù)據(jù)卷和存儲驅(qū)動 90
8.2 如何選擇存儲驅(qū)動 90
8.2.1 存儲設(shè)備和存儲驅(qū)動 92
8.2.2 如何存儲驅(qū)動 92
8.3 AUFS存儲驅(qū)動 94
8.3.1 AUFS中的鏡像 94
8.3.2 AUFS中的容器讀寫 95
8.3.3 在AUFS中刪除文件 95
8.3.4 如何配置AUFS 96
8.3.5 鏡像的存儲方式 96
8.3.6 容器的存儲方式 97
8.3.7 AUFS的性能 99
8.4 Devicemapper存儲驅(qū)動 99
8.4.1 Devicemapper中的鏡像 100
8.4.2 Devicemapper中的讀操作 101
8.4.3 Devicemapper中的寫操作 102
8.4.4 如何配置Devicemapper 103
8.4.5 在生產(chǎn)環(huán)境中配置direct-lvm模式 104
8.4.6 Devicemapper的存儲方式 107
8.4.7 動態(tài)擴(kuò)容loop-lvm模式下的thin pool 108
8.4.8 動態(tài)擴(kuò)容direct-lvm模式下的thin pool 110
8.4.9 Devicemapper的性能 110
8.5 Btrfs存儲驅(qū)動 111
8.5.1 Btrfs中的鏡像 112
8.5.2 Btrfs的存儲方式 114
8.5.3 Btrfs中的讀寫 114
8.5.4 如何配置Btrfs 115
8.5.5 Btrfs的性能 116
8.6 ZFS存儲驅(qū)動 117
8.6.1 ZFS中的鏡像 117
8.6.2 ZFS中的讀寫 118
8.6.3 如何配置ZFS 119
8.6.4 ZFS的性能 121
8.7 Overlay存儲驅(qū)動 122
8.7.1 Overlay中的鏡像 122
8.7.2 Overlay2中的鏡像 125
8.7.3 Overlay中的讀寫 127
8.7.4 如何配置Overlay/Overlay2 127
8.7.5 Overlay的性能 128
8.8 習(xí)題 129
第9章 定制Docker Daemon 130
9.1 修改Docker Daemon的三種方式 130
9.1.1 直接啟動Docker Daemon 132
9.1.2 修改Docker Daemon啟動項(xiàng) 132
9.1.3 自定義Docker Daemon配置文件 135
9.2 倉庫相關(guān)配置 137
9.2.1 --disable-legacy-registry選項(xiàng) 137
9.2.2 --registry-mirror選項(xiàng) 138
9.2.3 --insecure-registry選項(xiàng) 139
9.3 安全相關(guān)配置 139
9.3.1 -p, --pidfile選項(xiàng) 139
9.3.2 -H, --host選項(xiàng) 139
9.3.3 --tls, --tlscacert, --tlscert, --tlskey, --tlsverify選項(xiàng) 141
9.4 日志相關(guān) 145
9.4.1 -D,--debug選項(xiàng) 145
9.4.2 --log-level選項(xiàng) 145
9.4.3 --log-driver和--log-opt選項(xiàng) 146
9.5 存儲相關(guān)配置 148
9.5.1 -g, --graph選項(xiàng) 148
9.5.2 --storage-driver選項(xiàng) 148
9.5.3 --storage-opt選項(xiàng) 149
9.6 網(wǎng)橋相關(guān)配置 154
9.6.1 --bip選項(xiàng) 154
9.6.2 --fixed-cidr,--fixed- cidr-v6選項(xiàng) 154
9.6.3 --mtu選項(xiàng) 155
9.6.4 -b, --bridge選項(xiàng) 155
9.7 容器與外部通信 156
9.7.1 --ip-forward選項(xiàng) 156
9.7.2 --iptables選項(xiàng) 156
9.7.3 --ip, --ipv6選項(xiàng) 156
9.8 其他網(wǎng)絡(luò)配置 157
9.8.1 --default-gateway、--default-gateway-v6選項(xiàng) 157
9.8.2 --dns,--dns-opt,--dns-search選項(xiàng) 158
9.9 execdriver配置 158
9.9.1 --exec-opt選項(xiàng) 158
9.9.2 --exec-root選項(xiàng) 159
9.10 其他配置 159
9.11 習(xí)題 159
第10章 如何編寫Dockerfile 160
10.1 本地編譯鏡像 160
10.2 dockerignore文件 162
10.3 Dockerfile格式 163
10.4 Dockerfile指令詳解 163
10.4.1 FROM指令 163
10.4.2 MAINTAINER指令 164
10.4.3 RUN指令 164
10.4.4 CMD指令 164
10.4.5 LABEL指令 165
10.4.6 EXPOSE指令 166
10.4.7 ENV指令 166
10.4.8 ADD指令 168
10.4.9 COPY指令 169
10.4.10 ENTRYPOINT指令 170
10.4.11 VOLUME指令 173
10.4.12 USER指令 174
10.4.13 WORKDIR指令 174
10.4.14 ARG指令 175
10.4.15 ONBUILD指令 177
10.4.16 STOPSIGNAL指令 178
10.5 CMD、ENTRYPOINT和RUN的區(qū)別 178
10.6 習(xí)題 179
第11章 Dockerfile最佳實(shí)踐 181
11.1 基本原則 181
11.2 Dockerfile指令最佳實(shí)踐 183
11.2.1 FROM指令最佳實(shí)踐 183
11.2.2 RUN指令最佳實(shí)踐 183
11.2.3 CMD指令最佳實(shí)踐 185
11.2.4 EXPOSE指令最佳實(shí)踐 186
11.2.5 ENV指令最佳實(shí)踐 188
11.2.6 ADD和COPY指令最佳實(shí)踐 189
11.2.7 ENTRYPOINT指令最佳實(shí)踐 191
11.2.8 VOLUME指令最佳實(shí)踐 194
11.2.9 UESR指令最佳實(shí)踐 196
11.2.10 使用gosu工具 196
11.2.11 WORKDIR指令最佳實(shí)踐 198
11.2.12 ONBUILD指令最佳實(shí)踐 199
11.3 如何減小鏡像體積 199
11.4 一些官方鏡像的Dockerfile 205
11.4.1 Golang鏡像 205
11.4.2 Perl鏡像 208
11.4.3 Hy鏡像 209
11.4.4 Rails鏡像 210
11.5 習(xí)題 211
第12章 使用容器提供服務(wù) 212
12.1 使用容器提供數(shù)據(jù)庫服務(wù) 212
12.1.1 使用容器提供MySQL 212
12.1.2 使用容器提供MongoDB 215
12.2 如何使用容器提供Web服務(wù) 217
12.2.1 使用容器提供Apache HTTP服務(wù) 217
12.2.2 使用容器提供Django服務(wù) 218
12.2.3 使用容器提供Gitlab服務(wù) 219
12.3 如何使用容器提供編程環(huán)境 220
12.3.1 使用容器提供Java環(huán)境 221
12.3.2 使用容器提供Golang環(huán)境 222
12.4 習(xí)題 225
第13章 建立私有鏡像倉庫 226
13.1 鏡像倉庫配置詳解 227
13.2 version選項(xiàng) 231
13.3 log選項(xiàng) 231
13.4 hooks選項(xiàng) 231
13.5 storage選項(xiàng) 232
13.5.1 filesystem選項(xiàng) 233
13.5.2 azure選項(xiàng) 234
13.5.3 gcs選項(xiàng) 234
13.5.4 s3選項(xiàng) 234
13.5.5 swift選項(xiàng) 235
13.5.6 oss選項(xiàng) 236
13.5.7 delete選項(xiàng) 237
13.5.8 cache選項(xiàng) 237
13.5.9 maintenance選項(xiàng) 237
13.5.10 redirect選項(xiàng) 238
13.6 auth選項(xiàng) 238
13.6.1 silly選項(xiàng) 239
13.6.2 token選項(xiàng) 239
13.6.3 htpasswd選項(xiàng) 239
13.7 middleware選項(xiàng) 240
13.8 reporting選項(xiàng) 241
13.8.1 bugsnag選項(xiàng) 241
13.8.2 newrelic選項(xiàng) 241
13.9 http選項(xiàng) 242
13.9.1 tls選項(xiàng) 242
13.9.2 debug選項(xiàng) 243
13.9.3 headers選項(xiàng) 243
13.10 notifications選項(xiàng) 243
13.11 redis選項(xiàng) 244
13.12 health選項(xiàng) 245
13.12.1 storagedriver選項(xiàng) 245
13.12.2 file選項(xiàng) 246
13.12.3 http選項(xiàng) 246
13.12.4 tcp選項(xiàng) 246
13.13 proxy選項(xiàng) 247
13.14 鏡像倉庫配置實(shí)例 247
13.14.1 啟動容器數(shù)據(jù)持久化 247
13.14.2 使用文件系統(tǒng)保存鏡像 248
13.14.3 使用對象存儲保存鏡像 248
13.14.4 通過中間件使用
CDN服務(wù) 249
13.15 習(xí)題 250
第4篇 Docker常見問題
第14章 Docker常見問題 252
14.1 Docker基礎(chǔ)問題 252
14.1.1 什么是虛擬化技術(shù) 252
14.1.2 虛擬化有哪些分類 252
14.1.3 Docker目前支持哪些操作系統(tǒng) 253
14.1.4 哪種系統(tǒng)最適合運(yùn)行Docker 253
14.1.5 Docker有什么好處 253
14.1.6 容器化技術(shù)是什么時(shí)候出現(xiàn)的 253
14.1.7 Docker和虛擬機(jī)有什么區(qū)別 253
14.1.8 使用Docker容器需要什么基礎(chǔ)知識 254
14.1.9 如何學(xué)習(xí)Docker 254
14.2 Docker高級問題 255
14.2.1 Docker是否安全 255
14.2.2 如何修改已經(jīng)運(yùn)行的容器 255
14.2.3 容器有哪些網(wǎng)絡(luò)模式 255
14.2.4 容器如何進(jìn)行持久化 256
14.2.5 為什么進(jìn)入容器,但退出后容器就停止了 256
14.2.6 容器停止了,如何分析原因 256
14.2.7 Link容器是什么意思 256
14.2.8 容器環(huán)境變量有什么用途 256
14.2.9 容器中CPU、磁盤IO、網(wǎng)絡(luò)損耗大嗎 257
14.3 鏡像相關(guān) 257
14.3.1 什么是Dockerfile 257
14.3.2 Dockerfile書寫的最佳實(shí)踐是什么 257
14.3.3 容器運(yùn)行中Entrypoint和CMD的區(qū)別 258
14.3.4 Docker中容器鏡像的區(qū)別 258
14.3.5 Docker的鏡像倉庫有哪些 259
14.3.6 如何擁有私有倉庫 259
14.4 Docker三劍客 260
14.4.1 什么是Docker Machine 260
14.4.2 什么是Docker Compose 260
14.4.3 什么是Docker Swarm 260
14.5 習(xí)題 260
使用說明
1、下載并解壓,得出pdf文件
2、如果打不開本文件,請務(wù)必下載pdf閱讀器
3、安裝后,在打開解壓得出的pdf文件
4、雙擊進(jìn)行閱讀試讀
- 下載地址
- 本地下載通道:
- 浙江電信下載
- 北京聯(lián)通下載
- 江蘇電信下載
- 廣東電信下載
有問題? 點(diǎn)此報(bào)錯(cuò)
發(fā)表評論
1人參與,1條評論- 第1樓臺灣省臺北市新世紀(jì)資通股份有限公司網(wǎng)友發(fā)表于: 2019-03-21 09:54:07
- 好東西0蓋樓(回復(fù))
軟件排行榜
熱門推薦
- 網(wǎng)易新聞電腦版 v112.697.63M / 簡體中文
- 瀟湘書院電腦版 v2.3.11.888官方版49.65M / 簡體中文
- 數(shù)據(jù)挖掘?qū)д?官方版61.61M / 簡體中文
- 吉利博瑞用戶手冊 pdf高清版57.89M / 簡體中文
- 開源閱讀電腦版 v3.2517.96M / 簡體中文
- 京東讀書電腦版 v1.13.4官方版1.98M / 簡體中文
- PHP語言精粹電子書 pdf掃描版25.72M / 簡體中文
- linux常用命令大全 chm版1.48M / 簡體中文
- 本草綱目 5.34M / 簡體中文
- docker入門實(shí)戰(zhàn) pdf完整版1.38M / 簡體中文