docker理論-什麼是容器,什麼是docker?--黑夜青兒
阿新 • • 發佈:2018-12-21
什麼是容器
概念:一種虛擬化的方案作業系統級別的虛擬化
只能執行相同或相似核心的作業系統
依賴於Linux核心特性:Namespace和Cgroups
虛擬機器 :App B應用、資料儲存庫Bins/Libs、作業系統GuestOS
容器: App B應用、資料儲存庫Bins/Libs
什麼是Docker
將應用程式自動部署到容器
基於Apache2.0開源授權協議開發
Docker的使用場景
1. 使用Docker容器開發、測試、部署服務。 2. 建立隔離的執行環境 3. 搭建測試環境 4. 構建多使用者的平臺及服務(PaaS)基礎設施 5. 提供軟體及服務(SaaS)應用程式 6. 高效能、超大規模的宿主機部署
Docker的基本組成
* Docker Clinet客戶端
* Docker Daemon守護程序:客戶端訪問守護程序來控制容器
* Docker Image 映象:容器的基石、層疊的只讀檔案系統、聯合載入
* Docker Container 容器:通過映象啟動、啟動和執行階段、寫時複製
* Docker Registry 倉庫:公有(Docker Hub)、私有
Namespace 名稱空間
程式語言:
封裝——程式碼隔離
作業系統:
系統資源的隔離
程序、網路、檔案系統。。。
Control groups 控制組
用於控制資源
作用:
- [1] 資源限制 *
- [2] 優先順序設定
- [3] 資源計量
- [4] 資源控制
Namespace和Control groups使得Docker容器具有的能力
- [1] 檔案系統的隔離
- [2] 程序的隔離
- [3] 網路隔離
- [4] 資源隔離和分組