1. 程式人生 > >Docker從入門到實戰(二)

Docker從入門到實戰(二)

Docker 虛擬化

一步一步走,寫小白都能看懂的文章,將持續更新中,敬請期待!

Docker從入門到實戰(二)

一:什麽是docker

Docker是一個開源的應用容器引擎,開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後發布到主流的Linux、macOS、Windows機器上,實現虛擬化。

Docker用Go語言寫成,是一個重新定義了程序開發測試、交付和部署過程的開放平臺。

二:Docker與虛擬機的區別

虛擬機和Docker最明顯的差別是虛擬機需要安裝操作系統(安裝Guest OS)才能執行應用程序,而Docker內不需要安裝操作系統。Docker技術不是在OS外來建立虛擬環境,而是在OS內的核心系統層來打造虛擬執行環境,通過共享宿主機OS的做法,取代一個一個Guest OS的功用,Docker也因此被稱為操作系統虛擬化技術。

因為Docker技術采取共享宿主機OS的做法,而不需要在每一個Docker容器內執行Guest OS,因此建立Docker容器不需要等待操作系統開機時間,也不需要加載操作系統的額外進程。

技術分享圖片

三:Docker基本架構

Docker是一個構建、發布、運行分布式應用的平臺,Docker平臺由Docker Engine(運行環境+打包工具)、Docker Hub(API+生態系統)兩部分組成。

1.Docker Client介紹

Docker引擎可以直觀理解為就是某一臺機器上運行的Docker程序,實際上它就是一個C/S結構的軟件,有一個後臺守護進程在運行,每次運行docker命令的時候實際上都是通過RESTful Remote API來和守護進程進行交互的,即時在同一臺機器上也是如此。

在使用docker version查看版本時,會看到兩大部分:Client和Server,其實就是docker CLI(Client)和docker daemon(Server)

2.Docker daemon介紹

daemon就是一個守護進程,它實際上就是驅動整個Docker的核心引擎。

3.Docker鏡像

Docker鏡像是Docker系統中的構建模塊(Build Component),是啟動一個Docker容器的基礎。

Docker鏡像采用分層的結構構建,最底層是bootfs,這是一個引導文件系統,在容器啟動之後會自動卸載bootfs,bootfs之上是rootfs,rootfs是Docker容器在啟動時內部可見的文件系統,就是日常所見的“/”目錄。

4.Docker倉庫

Docker官方的Registry地址是https://hub.docker.com/




Docker從入門到實戰(二)