Docker容器實(shí)戰(zhàn):原理架構(gòu)與應(yīng)用是一本Docker快速入門(mén)書(shū)籍,由廖煜編著。本書(shū)內(nèi)容豐富翔實(shí),從實(shí)踐出發(fā),介紹在實(shí)際應(yīng)用場(chǎng)景中應(yīng)該如何定制Docker,并詳細(xì)介紹鏡像制作的步驟、指令和最佳實(shí)踐,各種存儲(chǔ)驅(qū)動(dòng)的區(qū)別和使用場(chǎng)合,以及Docker Daemon各種擴(kuò)展功能和接口的使用方法,并列舉了典型鏡像的使用方法。書(shū)中內(nèi)容涵蓋了Docker Daemon、Docker存儲(chǔ)驅(qū)動(dòng)、Docker鏡像倉(cāng)庫(kù)的所有配置選項(xiàng),并對(duì)每個(gè)選項(xiàng)都有詳細(xì)的介紹,非常適合軟件開(kāi)發(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àn)別的服務(wù),每一個(gè)鏡像都是要滿足用戶的某種需求。如何制作出體積小、安全性高、可配置性強(qiáng)的鏡像是困擾很多開(kāi)發(fā)者的問(wèn)題,書(shū)中詳細(xì)介紹了相關(guān)解決方案。本書(shū)的最后還介紹了各種流行的開(kāi)源項(xiàng)目,讓讀者了解Docker生態(tài)圈。
pdf特色
涵蓋的主要內(nèi)容包括云計(jì)算簡(jiǎn)介、Docker 的安裝、使用 Docker、Docker 深入解析容器的網(wǎng)絡(luò)、容器的數(shù)據(jù)、鏡像倉(cāng)庫(kù)、鏡像和容器的存儲(chǔ)結(jié)構(gòu)。
定制 Docker Daemon,如何編寫(xiě) DockerfileDockerfile 最佳實(shí)踐、使用容器提供服務(wù)。
建立私有鏡像倉(cāng)庫(kù)、Docker 常見(jiàn)問(wèn)題等。
章節(jié)目錄
第1篇 Docker基礎(chǔ)知識(shí)介紹
第1章 云計(jì)算簡(jiǎn)介 2
1.1 虛擬化技術(shù)的分類(lèi)和歷史 3
1.1.1 硬件級(jí)虛擬化歷史 3
1.1.2 操作系統(tǒng)級(jí)虛擬化歷史 4
1.2 云計(jì)算服務(wù)模式 4
1.3 Docker介紹 5
1.3.1 Docker主要解決什么問(wèn)題 6
1.3.2 Docker的歷史 6
1.3.3 Docker是什么 6
1.4 Linux快速入門(mén) 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 通過(guò)客戶端遠(yuǎn)程連接Linux主機(jī) 14
1.4.11 免密碼登錄Linux主機(jī) 15
1.4.12 安裝軟件 15
1.4.13 公有云主機(jī)快速入門(mén) 16
1.4.14 購(gòu)買(mǎi)云主機(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 添加倉(cāng)庫(kù) 26
2.2.4 正式安裝 26
2.3 通過(guò)Ghostcloud進(jìn)行安裝 27
2.3.1 注冊(cè)Ghostcloud賬號(hào) 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 通過(guò)官方的安裝腳本安裝 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入門(mén)操作 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)行長(zhǎng)時(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 通過(guò)容器運(yùn)行Web應(yīng)用 47
4.4.1 使用國(guó)內(nèi)倉(cāng)庫(kù) 48
4.4.2 拉取apache-php鏡像 48
4.4.3 運(yùn)行鏡像 48
4.4.4 網(wǎng)頁(yè)訪問(wèn) 48
4.4.5 修改頁(yè)面內(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 查找其他倉(cāng)庫(kù)鏡像 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的語(yǔ)法格式 56
4.6.2 前后臺(tái)運(yùn)行 57
4.6.3 容器的標(biāo)識(shí) 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ū)動(dòng)(--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章 鏡像倉(cāng)庫(kù) 75
7.1 倉(cāng)庫(kù)相關(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的高級(jí)使用
第8章 鏡像和容器的存儲(chǔ)結(jié)構(gòu) 78
8.1 鏡像、容器和存儲(chǔ)驅(qū)動(dòng)的關(guān)系 78
8.1.1 鏡像和鏡像層 78
8.1.2 鏡像存儲(chǔ)方式 80
8.1.3 一個(gè)遷移例子 81
8.1.4 容器和容器層 82
8.1.5 寫(xiě)時(shí)復(fù)制策略 83
8.1.6 使用共享技術(shù)減小鏡像體積 83
8.1.7 使用復(fù)制技術(shù)加快容器啟動(dòng)時(shí)間 86
8.1.8 數(shù)據(jù)卷和存儲(chǔ)驅(qū)動(dòng) 90
8.2 如何選擇存儲(chǔ)驅(qū)動(dòng) 90
8.2.1 存儲(chǔ)設(shè)備和存儲(chǔ)驅(qū)動(dòng) 92
8.2.2 如何存儲(chǔ)驅(qū)動(dòng) 92
8.3 AUFS存儲(chǔ)驅(qū)動(dòng) 94
8.3.1 AUFS中的鏡像 94
8.3.2 AUFS中的容器讀寫(xiě) 95
8.3.3 在AUFS中刪除文件 95
8.3.4 如何配置AUFS 96
8.3.5 鏡像的存儲(chǔ)方式 96
8.3.6 容器的存儲(chǔ)方式 97
8.3.7 AUFS的性能 99
8.4 Devicemapper存儲(chǔ)驅(qū)動(dòng) 99
8.4.1 Devicemapper中的鏡像 100
8.4.2 Devicemapper中的讀操作 101
8.4.3 Devicemapper中的寫(xiě)操作 102
8.4.4 如何配置Devicemapper 103
8.4.5 在生產(chǎn)環(huán)境中配置direct-lvm模式 104
8.4.6 Devicemapper的存儲(chǔ)方式 107
8.4.7 動(dòng)態(tài)擴(kuò)容loop-lvm模式下的thin pool 108
8.4.8 動(dòng)態(tài)擴(kuò)容direct-lvm模式下的thin pool 110
8.4.9 Devicemapper的性能 110
8.5 Btrfs存儲(chǔ)驅(qū)動(dòng) 111
8.5.1 Btrfs中的鏡像 112
8.5.2 Btrfs的存儲(chǔ)方式 114
8.5.3 Btrfs中的讀寫(xiě) 114
8.5.4 如何配置Btrfs 115
8.5.5 Btrfs的性能 116
8.6 ZFS存儲(chǔ)驅(qū)動(dòng) 117
8.6.1 ZFS中的鏡像 117
8.6.2 ZFS中的讀寫(xiě) 118
8.6.3 如何配置ZFS 119
8.6.4 ZFS的性能 121
8.7 Overlay存儲(chǔ)驅(qū)動(dòng) 122
8.7.1 Overlay中的鏡像 122
8.7.2 Overlay2中的鏡像 125
8.7.3 Overlay中的讀寫(xiě) 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 直接啟動(dòng)Docker Daemon 132
9.1.2 修改Docker Daemon啟動(dòng)項(xiàng) 132
9.1.3 自定義Docker Daemon配置文件 135
9.2 倉(cāng)庫(kù)相關(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 存儲(chǔ)相關(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章 如何編寫(xiě)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ù)庫(kù)服務(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章 建立私有鏡像倉(cāng)庫(kù) 226
13.1 鏡像倉(cāng)庫(kù)配置詳解 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 鏡像倉(cāng)庫(kù)配置實(shí)例 247
13.14.1 啟動(dòng)容器數(shù)據(jù)持久化 247
13.14.2 使用文件系統(tǒng)保存鏡像 248
13.14.3 使用對(duì)象存儲(chǔ)保存鏡像 248
13.14.4 通過(guò)中間件使用
CDN服務(wù) 249
13.15 習(xí)題 250
第4篇 Docker常見(jiàn)問(wèn)題
第14章 Docker常見(jiàn)問(wèn)題 252
14.1 Docker基礎(chǔ)問(wèn)題 252
14.1.1 什么是虛擬化技術(shù) 252
14.1.2 虛擬化有哪些分類(lèi) 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ǔ)知識(shí) 254
14.1.9 如何學(xué)習(xí)Docker 254
14.2 Docker高級(jí)問(wèn)題 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、磁盤(pán)IO、網(wǎng)絡(luò)損耗大嗎 257
14.3 鏡像相關(guān) 257
14.3.1 什么是Dockerfile 257
14.3.2 Dockerfile書(shū)寫(xiě)的最佳實(shí)踐是什么 257
14.3.3 容器運(yùn)行中Entrypoint和CMD的區(qū)別 258
14.3.4 Docker中容器鏡像的區(qū)別 258
14.3.5 Docker的鏡像倉(cāng)庫(kù)有哪些 259
14.3.6 如何擁有私有倉(cāng)庫(kù) 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
使用說(shuō)明
1、下載并解壓,得出pdf文件
2、如果打不開(kāi)本文件,請(qǐng)務(wù)必下載pdf閱讀器
3、安裝后,在打開(kāi)解壓得出的pdf文件
4、雙擊進(jìn)行閱讀試讀
- 下載地址
- 本地下載通道:
- 浙江電信下載
- 北京聯(lián)通下載
- 江蘇電信下載
- 廣東電信下載
有問(wèn)題? 點(diǎn)此報(bào)錯(cuò)
發(fā)表評(píng)論
1人參與,1條評(píng)論- 第1樓臺(tái)灣省臺(tái)北市新世紀(jì)資通股份有限公司網(wǎng)友發(fā)表于: 2019-03-21 09:54:07
- 好東西0蓋樓(回復(fù))
軟件排行榜
熱門(mén)推薦
- 網(wǎng)易新聞電腦版 v112.697.63M / 簡(jiǎn)體中文
- 瀟湘書(shū)院電腦版 v2.3.11.888官方版49.65M / 簡(jiǎn)體中文
- 數(shù)據(jù)挖掘?qū)д?官方版61.61M / 簡(jiǎn)體中文
- 吉利博瑞用戶手冊(cè) pdf高清版57.89M / 簡(jiǎn)體中文
- 開(kāi)源閱讀電腦版 v3.2517.96M / 簡(jiǎn)體中文
- 京東讀書(shū)電腦版 v1.13.4官方版1.98M / 簡(jiǎn)體中文
- PHP語(yǔ)言精粹電子書(shū) pdf掃描版25.72M / 簡(jiǎn)體中文
- linux常用命令大全 chm版1.48M / 簡(jiǎn)體中文
- 本草綱目 5.34M / 簡(jiǎn)體中文
- docker入門(mén)實(shí)戰(zhàn) pdf完整版1.38M / 簡(jiǎn)體中文