1.什么是docker?
? docker是基于Go語言實(shí)現(xiàn)的云開源項(xiàng)目。docker是一種容器,其基礎(chǔ)是Linux容器技術(shù)。docker是一種
輕量級(jí)的虛擬化方式。
2.docker的作用?
? docker通過對(duì)應(yīng)用組件的封裝、分發(fā)、部署、運(yùn)行等生命周期的管理,達(dá)到應(yīng)用組件級(jí)別的"一次封裝,到處運(yùn)行"。應(yīng)用組件既可以是一個(gè)web應(yīng)用,也可以是一套數(shù)據(jù)庫服務(wù),甚至是一個(gè)操作系統(tǒng)或編譯器。
3.docker容器
? docker容器可以理解為是一種沙盒。每個(gè)容器內(nèi)運(yùn)行一個(gè)應(yīng)用,不同的容器相互隔離,容器之間也可以建立通信機(jī)制。
4.docker容器虛擬化
? docker容器很快,啟動(dòng)和停止可以在秒級(jí)實(shí)現(xiàn)。
? docker容器對(duì)系統(tǒng)資源需求很少,一臺(tái)主機(jī)上可以同時(shí)運(yùn)行數(shù)千個(gè)Docker容器。
? ?docker通過類似Git的操作來方便用戶獲取、分發(fā)和更新應(yīng)用鏡像,指令簡(jiǎn)明。
? ?docker通過Dockerfile配置文件來支持靈活的自動(dòng)化創(chuàng)建和部署機(jī)制。
5.虛擬化與Docker
虛擬化技術(shù)可分基于硬件和軟件兩種虛擬化。
完全虛擬化:虛擬機(jī)模擬完整的底層硬件環(huán)境和特權(quán)指令的執(zhí)行過程,客戶操作系統(tǒng)無需進(jìn)行修改。
例如VMware Workstation VirtualBox Qemu等
操作系統(tǒng)級(jí)虛擬化:內(nèi)核通過創(chuàng)建多個(gè)虛擬的操作系統(tǒng)實(shí)例(內(nèi)核和庫)來隔離不同的進(jìn)程。
Docker容器是在操作系統(tǒng)層面上實(shí)現(xiàn)虛擬化。
傳統(tǒng)的虛擬化方式:
硬件層---宿主機(jī)操作系統(tǒng)---虛擬機(jī)管理程序---虛擬機(jī)操作系統(tǒng)---運(yùn)行時(shí)環(huán)境---應(yīng)用程序
Docker虛擬化方式:
硬件層---宿主機(jī)操作系統(tǒng)---Docker容器支持--運(yùn)行時(shí)環(huán)境---應(yīng)用程序
