下面讓我們來看一下本書所采用的Docker術語。
### 1.1.1 鏡像與容器
- 鏡像是指文件系統快照或tar包。
- 容器是指鏡像的運行態。
### 1.1.2 容器與虛擬機
- 虛擬機持有整個操作系統和應用程序的快照。
- 虛擬機運行著自己的內核。
- 虛擬機可以運行Linux之外的其他操作系統。
- 容器只持有應用程序,不過應用程序的概念可以延伸到整個Linux發行版。
- 容器共享宿主機的內核。
- 容器只能運行Linux,不過在同一宿主機上運行的每個容器都可包含不同的發行版。
### 1.1.3 持續集成/持續交付
在應用程序新代碼提交或觸發其他條件時,系統自動構建新鏡像并進行部署。
### 1.1.4 宿主機管理
設置/配備一臺物理服務器或虛擬機以便用于運行Docker容器的過程。
### 1.1.5 編排
編排(orchestration,也稱編配)這個術語在Docker生態系統中有多種含義。通常情況下,它包括調度和集群管理,不過有時也包括了宿主機管理。
在本書中,我們將編排作為一個松散的總稱,包括容器調度的過程、集群的管理、容器的鏈接(發現),以及網絡流量路由。或者換句話說,編排是個控制器進程,用于決定在哪里運行容器,以及如何讓集群知道可用的服務。
### 1.1.6 調度
用于決定哪些容器可以以給定的資源約束(如CPU、內存和IO)運行在哪些宿主機上。
### 1.1.7 發現
容器如何公開服務給集群,以及發現如何查找其他服務并與之通信的過程。舉個簡單的用例:一個網站應用容器發現如何連接到數據庫服務。
Docker文檔中的發現是指將容器鏈接在一起,不過在生產級系統中,通常使用的是更復雜的發現機制。
### 1.1.8 配置管理
配置管理過去常常指的是Docker出現之前的自動化工具,如Chef和Puppet。大多數的DevOps團隊正在轉移到Docker上,以消除這類配置管理系統的復雜度。
在本書的示例中,配置管理工具只用于配備具有Docker和少量其他東西的宿主機。
- 版權信息
- 版權聲明
- 內容提要
- 對本書的贊譽
- 譯者介紹
- 前言
- 本書面向的讀者
- 誰真的在生產環境中使用Docker
- 為什么使用Docker
- 我們所說的“生產環境”
- 哪些東西不要Docker化
- 技術審稿人
- 第1章 入門
- 1.1 術語
- 1.2 從開發環境到生產環境
- 1.3 使用Docker的多種方式
- 1.4 可預期的情況
- 第2章 技術棧
- 2.1 構建系統
- 2.2 鏡像倉庫
- 2.3 宿主機管理
- 2.4 配置管理
- 2.5 部署
- 2.6 編排
- 第3章 示例:極簡環境
- 3.1 保持各部分的簡單
- 3.2 保持流程的簡單
- 3.3 系統細節
- 3.4 集群范圍的配置、通用配置及本地配置
- 3.5 部署服務
- 3.6 支撐服務
- 3.7 討論
- 3.8 未來
- 3.9 小結
- 第4章 示例:Web環境
- 4.1 編排
- 4.2 連網
- 4.3 數據存儲
- 4.4 日志
- 4.5 監控
- 4.6 無須擔心新依賴
- 4.7 零停機時間
- 4.8 服務回滾
- 4.9 小結
- 第5章 示例:Beanstalk環境
- 5.1 構建容器的過程
- 5.2 日志
- 5.3 監控
- 5.4 安全
- 5.5 小結
- 第6章 安全
- 6.1 威脅模型
- 6.2 容器與安全性
- 6.3 內核更新
- 6.4 容器更新
- 6.5 suid及guid二進制文件
- 6.6 容器內的root
- 6.7 權能
- 6.8 seccomp
- 6.9 內核安全框架
- 6.10 資源限制及cgroup
- 6.11 ulimit
- 6.12 用戶命名空間
- 6.13 鏡像驗證
- 6.14 安全地運行Docker守護進程
- 6.15 監控
- 6.16 設備
- 6.17 掛載點
- 6.18 ssh
- 6.19 私鑰分發
- 6.20 位置
- 第7章 構建鏡像
- 7.1 此鏡像非彼鏡像
- 7.2 鏡像構建基本原理
- 7.3 小結
- 第8章 存儲Docker鏡像
- 8.1 啟動并運行存儲的Docker鏡像
- 8.2 自動化構建
- 8.3 私有倉庫
- 8.4 私有registry的擴展
- 8.5 維護
- 8.6 對私有倉庫進行加固
- 8.7 保存/載入
- 8.8 最大限度地減小鏡像體積
- 8.9 其他鏡像倉庫方案
- 第9章 CI/CD
- 9.1 讓所有人都進行鏡像構建與推送
- 9.2 在一個構建系統中構建所有鏡像
- 9.3 不要使用或禁止使用非標準做法
- 9.4 使用標準基礎鏡像
- 9.5 使用Docker進行集成測試
- 9.6 小結
- 第10章 配置管理
- 10.1 配置管理與容器
- 10.2 面向容器的配置管理
- 10.3 小結
- 第11章 Docker存儲引擎
- 11.1 AUFS
- 11.2 DeviceMapper
- 11.3 BTRFS
- 11.4 OverlayFS
- 11.5 VFS
- 11.6 小結
- 第12章 Docker 網絡實現
- 12.1 網絡基礎知識
- 12.2 IP地址的分配
- 12.3 域名解析
- 12.4 服務發現
- 12.5 Docker高級網絡
- 12.6 IPv6
- 12.7 小結
- 第13章 調度
- 13.1 什么是調度
- 13.2 調度策略
- 13.3 Mesos
- 13.4 Kubernetes
- 13.5 OpenShift
- 第14章 服務發現
- 14.1 DNS服務發現
- 14.2 Zookeeper
- 14.3 基于Zookeeper的服務發現
- 14.4 etcd
- 14.5 consul
- 14.6 Eureka
- 14.7 Smartstack
- 14.8 nsqlookupd
- 14.9 小結
- 第15章 日志和監控
- 15.1 日志
- 15.2 監控
- 15.3 小結
- DockOne社區簡介
- 看完了