# 第一節 Docker 介紹
Docker是一個新的容器化的技術,它輕巧,且易移植,號稱“**build once, configure once and run anywhere**”
本文主要涉及Docker的基礎知識:Docker的特征、理念以及如何安裝使用Docker。
### Docker 的哲學

### Docker 的特征
Docker有不少有趣的功能,通過本教程相信你會更好地理解它們。Docker的特性主要包括以下幾點:
- 速度飛快以及優雅的隔離框架
- 物美價廉
- CPU/內存的低消耗
- 快速開/關機
- 跨云計算基礎構架
### Docker vs VM

## Docker 容器化的本質
### Docker vs VM
容器 |虛擬機
---|---
我秒級啟動 | 你沒算應用吧,我也秒級
我一臺機器上啟動1000個nginx | 然并卵
我有鏡像,原子升級回滾 | 說的誰好像沒有似得
我秒級自修復 | 你確認這一秒沒丟啥
我服務發現 | Dubbo和springcloud笑而不語,熔斷,降級
我彈性伸縮 | 你聽說過autoscaling group么?
100個進程,每天一個鏡像| 鏡像有點大
### Docker 給我們帶來什么收益

---
### 容器的本質?

### Docker 組件與元素
Docker有三個組件和三個基本元素,讀者可以快速瀏覽下面這個視頻來了解這些組建和元素,以及它們的關系。
三個組件分別是:
- Docker Client 是用戶界面,它支持用戶與Docker Daemon之間通信。
- Docker Daemon運行于主機上,處理服務請求。
- Docker Index是中央registry,支持擁有公有與私有訪問權限的Docker容器鏡像的備份。
三個基本要素分別是:
- Docker Containers負責應用程序的運行,包括操作系統、用戶添加的文件以及元數據。
- Docker Images是一個只讀模板,用來運行Docker容器。
- DockerFile是文件指令集,用來說明如何自動創建Docker鏡像。

在討論Docker組件和基本要素如何交互之前,讓我們來談談Docker的支柱。Docker使用以下操作系統的功能來提高容器技術效率:
- Namespaces 充當隔離的第一級。確保一個容器中運行一個進程而且不能看到或影響容器外的其它進程。
- Control Groups是LXC的重要組成部分,具有資源核算與限制的關鍵功能。
- UnionFS(文件系統)作為容器的構建塊。為了支持Docker的輕量級以及速度快的特性,它創建了用戶層。
- 第一章 Docker核心技術(一)
- 第一章 Docker核心技術(二)
- 第一章 Docker核心技術(三)
- 第一章 Docker核心技術(四)
- 第二章 Docker 入門
- 第三章 使用docker鏡像
- 第四章 實戰應用使用Docker構建LNMP環境 (一)
- 第四章 實戰應用使用Docker構建LNMP環境 (二)
- 第四章 實戰應用使用Docker構建LNMP環境 (三)
- 第五章 構建企業級Harbor-Registry
- 第六章 構建Docker應用發布系統(一)
- 第六章 構建Docker應用發布系統(二)
- 第六章 構建Docker應用發布系統(三)
- 第六章 構建Docker應用發布系統(四)