1. 程式人生 > >Docker簡介與安裝

Docker簡介與安裝

itl 標準 size 文件的 mar 一個 style 系統管理 ati

Docker簡介與安裝(一)

1 簡介

1docker是什麽?

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使用一種叫做聯合文件系統(union filesystemsunionFS)的東西來將這些層組合為單個鏡像。

技術分享圖片


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 安裝dockeryum –y install docker

2 啟動dockersystemctl start docker

3 查看docker版本:docker version


技術分享圖片


4 查看docker信息

技術分享圖片


5 查看docker運行

技術分享圖片


Docker簡介與安裝