一文看懂云計(jì)算中的Docker容器
發(fā)布時(shí)間:2021-06-06作者:小編閱讀:0
云計(jì)算平臺(tái)
IaaS
虛擬機(jī) 存儲(chǔ) 負(fù)載均衡 網(wǎng)絡(luò)
PaaS
運(yùn)行時(shí)環(huán)境 數(shù)據(jù)庫 web服務(wù)器 開發(fā)工具
SaaS
客戶關(guān)系管理 郵件 虛擬桌面 通信 游戲
IaaS
理解為基礎(chǔ)設(shè)施運(yùn)維人員服務(wù),提供計(jì)算 存儲(chǔ) 網(wǎng)絡(luò)以及其他基礎(chǔ)資源,云平臺(tái)使用者可以在上面部署和運(yùn)行包括操作系統(tǒng)和應(yīng)用程序在內(nèi)的任意軟件,無需再為基礎(chǔ)設(shè)施的管理而分心
Paas
應(yīng)用開發(fā)人員服務(wù),提供支撐應(yīng)用運(yùn)行所需要的軟件運(yùn)行時(shí)環(huán)境,相關(guān)工具與服務(wù),如數(shù)據(jù)庫服務(wù),日志服務(wù) 監(jiān)控服務(wù)等,讓應(yīng)用開發(fā)者可以專注于核心業(yè)務(wù)的開發(fā)
SaaS
一般用戶服務(wù),提供了一套完整可用的軟件系統(tǒng),讓一般用戶無需關(guān)注技術(shù)細(xì)節(jié),只需要通過瀏覽器應(yīng)用客戶端等方式 就能使用部署在云上的應(yīng)用服務(wù)
容器
最新的容器技術(shù)引入了 OpenVZ Solaris Zones以及Linux容器(如lxc)使用這些新技術(shù),容器不再僅僅是一個(gè)單純的運(yùn)行環(huán)境,在自己的權(quán)限范圍內(nèi),容器更像是一個(gè)完整的宿主機(jī),對(duì)Docker來說,它得益于現(xiàn)在Linux內(nèi)核特性,如控制組(control group),命名空間(namespace)技術(shù),容器和宿主機(jī)之間的隔離更加徹底,容器有獨(dú)立的網(wǎng)絡(luò)和存儲(chǔ)棧,還擁有自己的資源管理能力,使得同一臺(tái)宿主機(jī)中的多個(gè)容器可以友好的地共存容器需要的開銷資源有限,和傳統(tǒng)的虛擬化以及半虛擬化技術(shù)(paravirtualization)相比,容器運(yùn)行不需要模擬(emulation layer)和管理層(hypervisor layer),而是使用操作通的系統(tǒng)調(diào)用接口,這降低了運(yùn)行單個(gè)容器所需要的開銷,也使得宿主機(jī)中可以運(yùn)行更多的容器
容器云
容器云以容器為資源分割和調(diào)度的基本單位,封裝整個(gè)軟件運(yùn)行時(shí)環(huán)境為開發(fā)者和系統(tǒng)管理員提供用于構(gòu)建發(fā)布和運(yùn)行分布式應(yīng)用的平臺(tái)。當(dāng)容器云專注于資源共享和隔離,容器編排與部署時(shí)候它更近傳統(tǒng)的Iaas。當(dāng)容器云滲透到應(yīng)用支撐與運(yùn)行是的環(huán)境時(shí), 它更接近于傳統(tǒng)的PaaS。從容器到容器云是一種偉大的進(jìn)化,并依舊在日積月累中不斷前行,現(xiàn)在讓我們一起進(jìn)入Docker世界感受容器和容器云的魅力。
docker 簡介
Docker是一個(gè)能夠把開發(fā)的應(yīng)用程序自動(dòng)部署到容器的開源引擎。用于構(gòu)建 發(fā)布 和運(yùn)行分部署應(yīng)用的平臺(tái),它是一個(gè)跨平臺(tái) 可移植并且簡單易用的容器解決方案。
Docker代碼托管在GitHub上,基于Go語言開發(fā) 并遵從Apache 2.0協(xié)議,通過操作系統(tǒng)內(nèi)核技術(shù)(namespaces cgroups)等 為容器提供資源隔離與安全保障。
Docker項(xiàng)目是由Solomon Hykes 所帶領(lǐng)的團(tuán)隊(duì)發(fā)起,在Docker公司的前身dotCloud內(nèi)部啟動(dòng)孕育代碼托管在GitHub。
2013年3月:Docker正式發(fā)布開源版本。
docker 特點(diǎn)
持續(xù)部署與測試
跨平臺(tái)支持
環(huán)境標(biāo)準(zhǔn)和版本控制
高資源利用率與隔離
容器跨平臺(tái)性與鏡像
易于理解且易用
應(yīng)用鏡像倉庫
Containers and virtual machines
docker 客戶端
Docker是一個(gè)典型的C/S架構(gòu)的應(yīng)用程序,但在發(fā)布上 Docker將客戶端和服務(wù)器端統(tǒng)一在同一個(gè)二進(jìn)制文件中,不過 這只是對(duì)于Linux系統(tǒng)而言的 在其他平臺(tái)上如Mac上,Docker只提供了用戶端
Docker客戶端一般通過Docker Command來發(fā)起請(qǐng)求,另外 也可以通過Docker提供的一整套
Restful API來發(fā)起請(qǐng)求, 這種方式更多地被應(yīng)用在應(yīng)用程序的代碼中
docker daemon
Docker daemon也可以被理解成DockerServer,另外 人們也常常用Docker Engine來直接描述它,因?yàn)檫@實(shí)際上就是驅(qū)動(dòng)整個(gè)Docker功能的核心引擎
簡單的說,Docker daemon實(shí)現(xiàn)的功能就是接收客戶端來的請(qǐng)求,并實(shí)現(xiàn)請(qǐng)求所要求的功能,
同時(shí)針對(duì)返回相應(yīng)的結(jié)果,在功能的實(shí)現(xiàn)上,因?yàn)樯婕傲巳萜?鏡像 存儲(chǔ)等多方面的內(nèi)容
daemon內(nèi)部的機(jī)制會(huì)復(fù)雜很多,涉及多個(gè)模塊之間的實(shí)現(xiàn)和交互
docker 鏡像
可以理解為類似于傳統(tǒng)虛擬化的iso鏡像,不過Docker鏡像相對(duì)要輕量化很多,它只是一個(gè)可以定制的rootfs。
Docker鏡像的另一個(gè)創(chuàng)新是 它是層級(jí)的 并且是可復(fù)用的。如果是基于相同的發(fā)行版的鏡像,在大多數(shù)文件的內(nèi)容上都是一樣的,基于此,當(dāng)然會(huì)希望可以服用他們。
利用Unionfs的特性,Docker會(huì)極大迪減少磁盤和內(nèi)存的開銷
docker 鏡像可以通過Dockerfile來創(chuàng)建的,Dockerfile提供了鏡像內(nèi)容的定制,同時(shí)也
體現(xiàn)了曾經(jīng)關(guān)系的建立。也可以通過使用docker commit命令來手動(dòng)將修改后的內(nèi)容生成鏡像
這些將在后面詳細(xì)介紹
Registry
Registry是一個(gè)存放鏡像的倉庫,它通常部署在互聯(lián)網(wǎng)服務(wù)器上或者云端上
Docker公司提供了官方的Registry叫Docker Hub這上面提供了大多數(shù)常用軟件和發(fā)行版的鏡像
Registry本身也是一個(gè)開源項(xiàng)目,任務(wù)人都可以下載進(jìn)項(xiàng)部署,所以多數(shù)企業(yè)選擇在自己的內(nèi)部
部署一套自己的Docker Hub 后二次開發(fā)。
docker 生態(tài)
以上就是一文看懂云計(jì)算中的Docker容器的介紹,億聯(lián)云提供企業(yè)私有云和公有云,以及企業(yè)多云直連的企業(yè)專線業(yè)務(wù),可以快速、有效的為客戶提供高速、穩(wěn)定的專有通道。如果您有相關(guān)的業(yè)務(wù)場景,歡迎咨詢,我們有專業(yè)的技術(shù)團(tuán)隊(duì)可以為您提供更好的建議和方案。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,請(qǐng)聯(lián)系站長郵箱:shawn.lee@eliancloud.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。
標(biāo)題:一文看懂云計(jì)算中的Docker容器
TAG標(biāo)簽:云計(jì)算
地址:http://www.dangdangload.com/article/20210603130922.html