一、Docker架構組成git
1)鏡像(Image):至關因而一個root文件系統。好比官方鏡像ubuntu:16.04就包含了完整的一套Ubuntu16.04最小系統的root文件系統。
docker
2)容器(Container):鏡像和容器的關係就像是面向獨享和程序設計中的類和實力同樣,鏡像是靜態的定義,容器就像是鏡像運行的實體。容器能夠被建立、啓動、中止、刪除、暫停等。
ubuntu
3)倉庫(Repository):倉庫能夠當作一個代碼控制中心,用來保存鏡像。
服務器
Docker使用客戶端-服務器(C/S)架構模式,使用遠程API來管理和建立Docker容器。
架構
Docker容器經過Docker鏡像來建立。
ide
二、Docker的C/S工具
概念 | 說明 |
Docker鏡像(Images) | 用於建立Docker容器的模版,好比Ubuntu系統。 |
Doxker容器(Container) | 容器是獨立運行的一個或一組應用,是鏡像運行的實體 |
Docker客戶端(Client) | Docker客戶端經過命令行或其餘工具使用Docker SDK(https://docs.docker.com/develop/sdk/)與Docker的守護進程通訊。 |
Docker主機(host) | 一個物理或虛擬機的機器用於執行Docker守護進程和容器。 |
Docker倉庫(Registry) | Docker 倉庫用來保存鏡像,能夠理解爲代碼控制中的代碼倉庫。spa Docker Hub(https://hub.docker.com) 提供了龐大的鏡像集合供使用。命令行 一個 Docker Registry 中能夠包含多個倉庫(Repository);每一個倉庫能夠包含多個標籤(Tag);每一個標籤對應一個鏡像。設計 一般,一個倉庫會包含同一個軟件不一樣版本的鏡像,而標籤就經常使用於對應該軟件的各個版本。咱們能夠經過 <倉庫名>:<標籤> 的格式來指定具體是這個軟件哪一個版本的鏡像。若是不給出標籤,將以 latest 做爲默認標籤。 |
Docker Machine | Docker Machine是一個簡化Docker安裝的命令行工具,經過一個簡單的命令行便可在相應的平臺上安裝Docker,好比VirtualBox、 Digital Ocean、Microsoft Azure。 |