Docker基礎與實戰

Docker基礎與實戰

《Docker基礎與實戰》是2016年6月人民郵電出版社出版的圖書,作者是李在弘。

基本信息

【作者】

【編輯】

【ISBN】

【日期】

【版次】 1

【印次】 1

【頁數】

【】

【開本】

【定價】

圖書簡介

本書從Docker基礎理論出發,更側重實際業務中的技術與套用。重點在於後半部分在Amazon EC2、Google Colud Platform等平台上的使用方法,以及Rails與Django應用程式構建方法等,都是能夠直接運用於實操的技術點。本書是利用Docker構建開發系統、測試系統、作業系統的傑出指南,非常適合一線開發人員。

目錄

第1 章 Docker 1

1.1 虛擬機與Docker 3

1.1.1 虛擬機 4

1.1.2 Docker 5

1.1.3 Linux 容器 6

1.2 Docker 鏡像與容器 8

第2 章 安裝Docker 11

2.1 Linux 11

2.1.1 自動安裝腳本 11

2.1.2 Ubuntu 11

2.1.3 RedHat Enterprise Linux、CentOS 12

2.1.4 使用最新二進制檔案 12

2.2 Mac OS X 13

2.3 Windows 16

第3 章 使用Docker 23

3.1 使用search 命令搜尋鏡像 23

3.2 使用pull 命令下載鏡像 25

3.3 使用images 命令列出鏡像目錄 25

3.4 使用run 命令創建容器 25

3.5 使用ps 命令查看容器列表 26

3.6 使用start 命令啟動容器 26

3.7 使用restart 命令重啟容器 27

3.8 使用attach 命令連線容器 27

3.9 使用exec 命令從外部運行容器內的命令 27

3.10 使用stop 命令終止容器 28

3.11 使用rm 命令刪除容器 28

3.12 使用rmi 命令刪除鏡像 29

第4 章 創建Docker 鏡像 31

4.1 熟悉Bash 31

目錄

4.2 編寫Dockerfile 36

4.3 使用build 命令創建鏡像 37

第5 章 查看Docker 39

5.1 使用history 命令查看鏡像歷史 39

5.2 使用cp 命令複製檔案 40

5.3 使用commit 命令從容器的修改中創建鏡像 40

5.4 使用diff 命令檢查容器檔案的修改 40

5.5 使用inspect 命令查看詳細信息 41

第6 章 靈活使用Docker 43

6.1 搭建Docker 私有倉庫 43

6.1.1 存儲鏡像數據到本地 43

6.1.2 使用push 命令上傳鏡像 44

6.1.3 存儲鏡像數據到Amazon S3 45

6.1.4 使用默認認證 46

6.2 連線Docker 的容器 52

6.3 連線到其他伺服器的Docker 容器 53

6.4 使用Docker 數據卷 56

6.5 使用Docker 數據卷容器 59

6.6 創建Docker 基礎鏡像 60

6.6.1 創建Ubuntu 基礎鏡像 60

6.6.2 創建CentOS 基礎鏡像 61

6.6.3 創建空基礎鏡像 62

6.7 在Docker 內運行Docker 64

第7 章 詳細了解Dockerfile 67

7.1 .dockerignore 68

7.2 FROM 68

7.3 MAINTAINER 69

7.4 RUN 69

7.5 CMD 70

7.6 ENTRYPOINT 71

7.7 EXPOSE 73

7.8 ENV 73

7.9 ADD 74

7.10 COPY 76

7.11 VOLUME 77

7.12 USER 77

7.13 WORKDIR 78

7.14 ONBUILD 79

第8 章 使用Docker 部署應用程式 81

8.1 向一台伺服器部署應用程式 81

8.1.1 在開發者PC 安裝Git 並創建倉庫 82

8.1.2 在開發者PC 中使用Node.js 編寫Web 伺服器 83

8.1.3 在開發者PC 中編寫Dockerfile 檔案 84

8.1.4 在開發者PC 中生成SSH 密鑰 85

8.1.5 在伺服器端安裝Git 並創建倉庫 86

8.1.6 在伺服器中安裝Docker 87

8.1.7 在伺服器中安裝SSH 密鑰 88

8.1.8 在伺服器中安裝Git Hook 89

8.1.9 在開發者PC 中推送原始碼 90

8.2 向多台伺服器部署應用程式 91

8.2.1 在開發者PC 安裝Git 並創建倉庫 92

8.2.2 在開發者PC 中使用Node.js 編寫Web 伺服器 93

8.2.3 在開發者PC 中編寫Dockerfile 檔案 94

8.2.4 在開發者PC 中生成SSH 密鑰 95

8.2.5 在部署伺服器安裝Git 並創建倉庫 96

8.2.6 在部署伺服器中生成SSH 密鑰 97

8.2.7 在部署伺服器中安裝Docker 98

8.2.8 在部署伺服器中安裝Docker 註冊伺服器 99

8.2.9 在部署伺服器中安裝SSH 密鑰 100

8.2.10 在部署伺服器中安裝Git Hook 101

8.2.11 在應用程式伺服器中安裝Docker 103

8.2.12 在應用程式伺服器中安裝SSH 密鑰 104

8.2.13 在開發者PC 中推送原始碼 105

第9 章 Docker 監控 107

9.1 編寫監控伺服器Dockerfile 108

9.2 編寫應用程式伺服器Dockerfile 111

9.3 在Web 瀏覽器中查看圖表 114

第10 章 在Amazon Web Services 中使用Docker 117

10.1 在Amazon EC2 中使用Docker 117

10.2 在AWS Elastic Beanstalk 中使用Docker 119

10.2.1 在AWS 控制台部署Docker 應用程式 119

10.2.2 使用Docker Hub 公開倉庫鏡像 129

10.2.3 使用Docker Hub 私有倉庫的鏡像 131

10.2.4 使用Git 部署Elastic Beanstalk Docker 應用程式 139

第11 章 在Google Cloud Platform 中使用Docker 145

11.1 安裝Goolge Cloud SDK 145

11.2 在Compute Engine 中使用Docker 147

11.3 在Container Engine 中使用Docker 148

第12 章 使用Docker Hub 151

12.1 加入Docker Hub 151

12.2 使用push 命令上傳鏡像 153

12.3 創建Docker Hub 私有倉庫 155

12.4 使用Docker Hub Automated Build 157

第13 章 使用Docker Remote API 167

13.1 使用Docker Remote API Python 庫 169

13.1.1 創建並啟動容器 169

13.1.2 創建鏡像 173

13.1.3 顯示容器列表 175

13.1.4 顯示鏡像列表 176

13.1.5 其他示例與函式 176

13.2 使用Docker Remote API Python 庫進行HTTPS 通信 187

13.2.1 創建證書 187

13.2.2 使用Python 庫 191

第14 章 使用CoreOS 193

14.1 在VirtualBox 中安裝CoreOS 196

使用systemd 運行服務 205

14.2 使用Vagrant 安裝CoreOS 206

14.3 使用etcd 211

14.3.1 創建etcd 鍵與目錄 211

14.3.2 輸出etcd 鍵與目錄列表 212

14.3.3 設定自動刪除etcd 鍵與目錄 212

14.3.4 監視etcd 鍵 213

14.3.5 etcd 其他命令 214

14.4 使用fleet 214

14.4.1 輸出fleet 機器列表 215

14.4.2 使用fleet 運行Unit 215

14.4.3 輸出fleet Unit 列表 217

14.4.4 查看fleet Unit 狀態 217

14.4.5 測試fleet 的自動恢復功能 218

14.4.6 使用fleet 專用選項 219

14.4.7 靈活使用fleet Unit 檔案模板 222

14.4.8 靈活使用fleet sidekick 模型 224

14.4.9 fleet 其他命令 227

14.5 在雲服務中使用CoreOS 227

14.5.1 在Amazon EC2 中使用CoreOS 227

14.5.2 在Google Compute Engine 中使用CoreOS 229

第15 章 使用Docker 搭建WordPress 部落格 231

15.1 編寫WordPress Dockerfile 檔案 232

15.2 編寫MySQL 資料庫Dockerfile 檔案 233

15.3 創建WordPress 與資料庫容器 236

第16 章 使用Docker 構建Ruby on Rails 套用 237

16.1 安裝Ruby 與Rails 238

16.2 編寫Rails Dockerfile 240

16.3 編寫PostgreSQL 資料庫Dockerfile 檔案 245

16.4 創建Rails 與資料庫容器 247

第17 章 使用Docker 構建Django 套用 249

17.1 安裝Django 250

17.2 編寫Django Dockerfile 檔案 253

17.3 編寫Oracle 資料庫Dockerfile 檔案 258

17.4 創建Django 與資料庫容器 261

第18 章 Docker 套用案例 263

18.1 與負載平衡相關的自動伸縮 263

18.2 整合開發、測試、運營 264

18.3 輕鬆遷移服務 265

18.4 用於測試 267

第19 章 Docker 命令與選項列表 269

19.1 attach 270

19.2 build 271

19.3 Commit 273

19.4 cp 273

19.5 create 274

19.6 diff 277

19.7 events 277

19.8 exec 278

19.9 export 280

19.10 history 280

19.11 images 281

19.12 import 281

19.13 info 282

19.14 inspect 283

19.15 kill 284

19.16 load 284

19.17 login 285

19.18 logout 286

19.19 logs 286

19.20 port 287

19.21 pause 287

19.22 ps 287

19.23 pull 288

19.24 push 289

19.25 restart 289

19.26 rm 289

19.27 rmi 290

19.28 run 291

19.29 save 296

19.30 search 297

19.31 start 297

19.32 stop 298

19.33 tag 298

19.34 top 299

19.35 unpause 299

19.36 version 300

19.37 wait 300

附錄 編譯Docker 301

相關詞條

相關搜尋

熱門詞條

聯絡我們