本書講解Docker容器的配置、部署與應用,共分為8個項目,包括Docker安裝、Docker快速入門、Docker網絡與存儲配置、Docker容器與守護進程運維、Docker容器編排、應用程序容器化、自動化構建與持續(xù)集成、Docker集群配置與應用。本書的重點和特色是Docker在應用程序開發(fā)和部署方面的實施。本書內容豐富,注重實踐性和可操作性,對項目中的每個任務都有相應的操作示范,并穿插大量實例,便于讀者快速上手。
本書可作為高職高專院校計算機專業(yè)課程的教材,也適合作為軟件開發(fā)人員、IT實施和運維工程師學習Docker容器技術的參考書,還可作為相關機構的培訓教材。
1.項目式結構組織內容。
2.注意重點突出、難點分散、循序漸進。
3.大量動手實踐內容,實例涉及 Java、PHP、Python 等主流應用程序。
戴遠泉,男,1965年10月出生,湖北黃梅人。1988年畢業(yè)于湖北大學物理系獲學士學位,2004年畢業(yè)于西安交通大學計算機學院獲碩士學位,現(xiàn)為湖北輕工職業(yè)技術學院黨總支書記,副教授。數(shù)年來一直堅守教學第一線,主要承擔《Java高級程序設計》、《Java框架技術》、《軟件工程》、《大數(shù)據(jù)應用開發(fā)》等課程的教學工作。近三年主編《Java高級程序設計實踐教程》、《C語言程序設計》、《計算機應用基礎》等教程多部,發(fā)表論文6篇。近年來一直組織并指導學生參加全國職業(yè)院校職業(yè)技能大賽、湖北省職業(yè)院校職業(yè)技能大賽并取得了很好的成績;每年擔任全國職業(yè)院校技能大賽高職組大數(shù)據(jù)技術與應用賽項裁判工作和湖北省職業(yè)院校信息化教學大賽評委工作。
項目一 Docker安裝 1
學習目標 1
項目描述 1
任務一 了解Docker 1
任務說明 1
知識引入 1
任務實現(xiàn) 5
任務二 安裝Docker 9
任務說明 9
知識引入 10
任務實現(xiàn) 11
任務三 Docker命令行使用 18
任務說明 18
知識引入 18
任務實現(xiàn) 20
項目實訓 22
項目實訓一 安裝Docker 22
項目實訓二 使用docker命令 23
項目總結 23
項目二 Docker快速入門 24
學習目標 24
項目描述 24
任務一 Docker鏡像的使用與操作 24
任務說明 24
知識引入 25
任務實現(xiàn) 28
任務二 Docker容器的使用與操作 34
任務說明 34
知識引入 34
任務實現(xiàn) 37
任務三 Docker注冊中心的使用與操作 42
任務說明 42
知識引入 43
任務實現(xiàn) 45
任務四 構建鏡像 53
任務說明 53
知識引入 53
任務實現(xiàn) 62
項目實訓 67
項目實訓一 Ubuntu鏡像操作 67
項目實訓二 Apache Web容器操作 67
項目實訓三 使用阿里云鏡像服務 68
項目實訓四 構建在Ubuntu系統(tǒng)上運行Nginx的鏡像 68
項目總結 68
項目三 Docker網絡與存儲配置 69
學習目標 69
項目描述 69
任務一 Docker網絡配置與管理 69
任務說明 69
知識引入 69
任務實現(xiàn) 76
任務二 Docker存儲配置與管理 88
任務說明 88
知識引入 88
任務實現(xiàn) 92
項目實訓 100
項目實訓一 創(chuàng)建和使用用戶自定義橋接網絡 100
項目實訓二 Docker卷的使用 100
項目實訓三 綁定掛載的使用 100
項目實訓四 測試容器填充卷 101
項目總結 101
項目四 Docker容器與守護
進程運維 102
學習目標 102
項目描述 102
任務一 Docker容器配置進階 102
任務說明 102
知識引入 102
任務實現(xiàn) 107
任務二 限制容器的資源使用 111
任務說明 111
知識引入 112
任務實現(xiàn) 115
任務三 容器監(jiān)控與日志管理 116
任務說明 116
知識引入 117
任務實現(xiàn) 118
任務四 配置Docker對象 128
任務說明 128
知識引入 129
任務實現(xiàn) 130
任務五 配置和管理Docker守護進程 130
任務說明 130
知識引入 131
任務實現(xiàn) 132
項目實訓 135
項目實訓一 容器的高級配置 135
項目實訓二 實施容器監(jiān)控 136
項目實訓三 管理容器日志 136
項目實訓四 配置和管理Docker
守護進程 136
項目總結 136
項目五 Docker容器編排 137
學習目標 137
項目描述 137
任務一 Docker Compose入門 137
任務說明 137
知識引入 137
任務實現(xiàn) 139
任務二 編寫Compose文件 143
任務說明 143
知識引入 143
任務實現(xiàn) 151
任務三 使用Docker Compose部署和管理應用程序 155
任務說明 155
知識引入 156
任務實現(xiàn) 160
項目實訓 165
項目實訓一 安裝Docker Compose并使用它部署WordPress 165
項目實訓二 從源代碼開始構建、部署和管理應用程序 165
項目總結 166
項目六 應用程序容器化 167
學習目標 167
項目描述 167
任務一 構建應用程序鏡像 167
任務說明 167
知識引入 168
任務實現(xiàn) 170
任務二 對應用程序進行容器化 174
任務說明 174
知識引入 174
任務實現(xiàn) 176
任務三 Java應用程序容器化 177
任務說明 177
知識引入 178
任務實現(xiàn) 180
任務四 PHP應用程序容器化 193
任務說明 193
知識引入 194
任務實現(xiàn) 194
任務五 Python應用程序容器化 198
任務說明 198
知識引入 198
任務實現(xiàn) 200
項目實訓 205
項目實訓一 容器化Spring Boot應用程序 205
項目實訓二 使用Docker Compose部署LAMP平臺 206
項目實訓三 使用Docker Compose部署Django應用程序 206
項目總結 206
項目七 自動化構建與持續(xù)集成 207
學習目標 207
項目描述 207
任務一 鏡像的自動化構建 207
任務說明 207
知識引入 207
任務實現(xiàn) 209
任務二 持續(xù)集成與持續(xù)部署 218
任務說明 218
知識引入 218
任務實現(xiàn) 227
項目實訓 243
項目實訓一 使用阿里云容器鏡像服務的自動化構建功能 243
項目實訓二 實現(xiàn)項目的持續(xù)集成和持續(xù)部署 243
項目總結 243
項目八 Docker集群配置與應用 245
學習目標 245
項目描述 245
任務一 建立Docker Swarm集群 245
任務說明 245
知識引入 245
任務實現(xiàn) 249
任務二 在Swarm集群中部署和管理服務 253
任務說明 253
知識引入 253
任務實現(xiàn) 256
任務三 配置管理Swarm網絡 265
任務說明 265
知識引入 266
任務實現(xiàn) 267
任務四 高可用性與負載平衡配置 270
任務說明 270
知識引入 270
任務實現(xiàn) 271
任務五 使用Docker棧部署分布式應用程序 274
任務說明 274
知識引入 274
任務實現(xiàn) 278
項目實訓 285
項目實訓一 建立Swarm集群并測試服務創(chuàng)建 285
項目實訓二 使用Docker棧在集群中部署WordPress 285
項目總結 285