Docker 入門概述(適合初學者瞭解相關概念)

拾月_發表於2019-04-20

隨著雲產品和雲服務的普及,各種各樣的相關技術開始層出不窮,Docker作為一門熱門的技術被越來越多的公司和開發者所使用,本篇文章主要為大家簡單介紹一下Docker,幫助大家理解一下Docker中常用的一些概念,非常適合初學者。

                         Docker 入門概述(適合初學者瞭解相關概念)


Docker 簡介

Docker是一個開源的應用容器引擎,基於Go語言並遵從Apache2.0協議開源,Docker主要是對程式進行封裝隔離,屬於作業系統層面的虛擬化技術,由於隔離的程式獨立於宿主和其它隔離的程式,因此稱其為容器。基於Docker開發者們可以將應用程式以及依賴包一起打包到一個輕量級,可移植的容器中,然後釋出到任何流行的Linux機器和Windows Server(目前支援的Windows Server版本為Windows 2016,Windows 2019和Windows 10)上,也可以實現虛擬化。

補充:針對Win7和Win8系統來說也可以利用Docker toolbox進行安裝,docker toolbox是一個工具集,主要包含:

Docker CLI客戶端:用來執行Docker引擎建立映象和容器

Docker Machine: 可以讓你在windows的命令列中執行docker引擎命令

Docker compose:用來執行docker-compse命令

Kitematic:Docker的GUI版本

Docker QuickStart shell:一個已經配置好Docker的命令列環境

Oracle VM Virtualbox:虛擬機器

當然目前Docker已經有了Docker for windows的專業安裝包,因此我們主要針對最新的Docker for windows來學習。

Docker架構

Docker使用客戶端-伺服器(C/S)架構模式,使用遠端API來管理和建立Docker容器。Docker容器通過映象(Image)來建立。容器相當於是映象的一個例項,容器與映象的關係類似於物件導向程式設計中物件與類的關係。

Docker容器與傳統虛擬化方式的區別

傳統虛擬機器技術是虛擬出一套硬體後,在其上執行一個完整作業系統,在該系統上再執行所需應用程式;而容器內的應用程式直接執行於宿主的核心,容器內沒有自己的核心,而且也沒有進行硬體虛擬。因此容器要比傳統虛擬機器更為輕便,快捷。

Docker 入門概述(適合初學者瞭解相關概念)

Docker 容器中常用的術語

Docker映象(Images): Docker映象是用來建立Docker容器的模板。Docker映象是一個特殊的檔案系統,提供了容器執行時所需的程式,庫,資源,配置等等。Docker Image是容器的基礎,Docker容器的執行都是基於Image執行的,Docker映象中包含了執行環境和配置,所以Docker可以簡化部署多種應用例項工作,比如Web應用,後臺應用,資料庫應用,大資料應用比如Hadoop叢集,訊息佇列等等都可以打包成一個映象部署。

Docker 容器(Container): 容器是獨立執行的一個或一組應用。映象是靜態的定義,容器是映象執行時的實體。容器可以被建立,啟動,停止,刪除,暫停等。容器的實質是程式,但與直接在宿主執行的程式不同,容器程式執行於屬於自己的獨立的名稱空間。實際開發的過程中大家要注意一點:容器不應該向其儲存層內寫入任何資料,容器儲存層要保持無狀態化。

Docker倉儲(Registry): Docker Registry用來儲存映象,可以理解為程式碼控制中的程式碼倉儲。Docker Hub(https://hub.docker.com)提供了龐大的映象集合供使用。映象構建完成後,可以很容易的在當前宿主機器上執行,但是,如果需要在其它伺服器上使用這個映象,我們就需要一個集中的儲存,釋出映象的服務,Docker Registry就是這樣的服務。一個Docker Registry中可以包含多個倉儲(Repository),每個倉儲可以包含多個標籤(Tag),每個標籤對應一個映象。

以上就是初學Docker時大家會遇到的概念性相關的知識,希望會對大家對Docker的學習和理解有所幫助。

相關資料:

yeasy.gitbooks.io/docker_prac… 

www.runoob.com/docker/dock…



相關文章