Docker簡介與安裝
1 簡介
(1)docker是什麽?
Docker 的英文本意是“搬運工”,在程序員的世界裏, Docker 搬運的是集裝箱(Container),docker 是一種用了新穎方式實現的輕量級虛擬機,類似於 VM,但是在原理和應用上和VM 的差別還是很大的.並且 docker 的專業叫法是應用容器(Application Container)。
(2)docker的優勢
?開發者使用一個標準的 image 來構建開發容器,開發完成之後,系統管理員就可以使用這個容器來部署代碼
?docker 可以快速創建容器,快速叠代應用程序,並讓整個過程可見,使團隊中的其他成員更容易理解應用程序是如何創建和工作的。
?docker 容器很輕!很快!容器的啟動時間是次秒級的,節約開發、測試、部署的時間
?docker 容器可以在幾乎所有的環境中運行,物理機、虛擬機、公有雲、私有雲、個人電腦、服務器等等。
?docker 容器兼容很多平臺,這樣就可以把一個應用程序從一個平臺遷移到另外一個。
?docker 容器不需要 hypervisor ,他是內核級的虛擬化。
?通常只需要小小的改變就可以替代以往巨型和大量的更新工作。
(3)docker與傳統虛擬化方式的不同
①傳統虛擬化是虛擬化硬件,如圖:
②而docker使用docker引擎 ,共享原生系統。如圖:
2 Docker的體系結構
docker 使用 C/S 架構;docker daemon 在後臺運行,作為 server 端接受client 的請求,並處理(創建、運行、分發容器);docker client以系統命令形式存在接受用戶指令與daemon通信。
(1) docker組件:
Docker 鏡像 - Docker images:
Docker鏡像是
Docker 倉庫 - Docker registeries:
倉庫是集中存放鏡像文件的場所。每個 倉庫中又包含了多個鏡像,每個鏡像有不同的標簽(tag)。 最大的公開倉庫是DockerHub ;用戶也可以在本地網絡內創建一個私有倉庫。
Docker 容器 - Docker containers:
docker利用容器來開發、運行應用。容器是鏡像創建的實例。它可以被啟動、開始、停止、刪除。每個容器都是 相互隔離的、保證安全的平臺。
3 Docker底層技術
(1) Namespaces : 隔離各個容器。
① Pid namespace:隔離進程
② Net namespace:隔離網絡
③ Ipc namespace:隔離信號量,內存
④ Mnt namespace:隔離目錄
⑤ Uts namespace :使其在網絡上被視作一個獨立節點
⑥ User namespace:隔離用戶
(2) Controlgroups:實現資源的配額和度量。
二 安裝Docker
Docker官網: https://docs.docker.com
Docker支持centos6 及以上版本。
//作者使用阿裏雲的centos7 ;centos6 註意內核是否支持aufs
1 yum 安裝docker:yum –y install docker
2 啟動docker:systemctl start docker
3 查看docker版本:docker version :
4 查看docker信息 :
5 查看docker運行 :
Docker簡介與安裝