新聞中心
大家好,今天小編關(guān)注到一個(gè)比較有意思的話題,就是關(guān)于docker中容器和鏡像的關(guān)系的問(wèn)題,于是小編就整理了3個(gè)相關(guān)介紹為您解答,讓我們一起看看吧。

目前創(chuàng)新互聯(lián)建站已為上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、高安網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
Docker框架由哪幾個(gè)部分組成?
Docker 架構(gòu)
Docker 包括三個(gè)基本概念:
鏡像(Image):Docker 鏡像(Image),就相當(dāng)于是一個(gè) root 文件系統(tǒng)。比如官方鏡像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系統(tǒng)的 root 文件系統(tǒng)。
容器(Container):鏡像(Image)和容器(Container)的關(guān)系,就像是面向?qū)ο蟪绦蛟O(shè)計(jì)中的類(lèi)和實(shí)例一樣,鏡像是靜態(tài)的定義,容器是鏡像運(yùn)行時(shí)的實(shí)體。容器可以被創(chuàng)建、啟動(dòng)、停止、刪除、暫停等。
倉(cāng)庫(kù)(Repository):倉(cāng)庫(kù)可看成一個(gè)代碼控制中心,用來(lái)保存鏡像。
Docker 使用客戶端-服務(wù)器 (C/S) 架構(gòu)模式,使用遠(yuǎn)程API來(lái)管理和創(chuàng)建Docker容器。
Docker 容器通過(guò) Docker 鏡像來(lái)創(chuàng)建。
docker如何管理?
1、鏡像
Docker的鏡像是創(chuàng)建容器的基礎(chǔ),類(lèi)似虛擬機(jī)的快照,可以理解為一個(gè)面向 Docker 容器引擎的只讀模板
通過(guò)鏡像啟動(dòng)一個(gè)容器,一個(gè)鏡像是一個(gè)可執(zhí)行的包,其中包括運(yùn)行應(yīng)用程序所需要的所有內(nèi)容包含代碼,運(yùn)行時(shí)間,庫(kù)、環(huán)境變量、和配置文件。
2、容器
Docker的容器是從鏡像創(chuàng)建的運(yùn)行實(shí)例,它可以被啟動(dòng)、停止和刪除。所創(chuàng)建的每一個(gè)容器都是相互隔離、互不可見(jiàn),以保證平臺(tái)的安全性??梢园讶萜骺醋鍪且o簡(jiǎn)易版的linux環(huán)境(包括root用戶權(quán)限、鏡像空間、用戶空間和網(wǎng)絡(luò)空間等)和運(yùn)行在其中的應(yīng)用程序。
3、倉(cāng)庫(kù)
Docker倉(cāng)庫(kù)是用來(lái)集中保存鏡像的地方,當(dāng)創(chuàng)建了自己的鏡像之后,可以使用push命令將它上傳到公有倉(cāng)庫(kù)(Public)或者私有倉(cāng)庫(kù)(Private)。當(dāng)下次要在另外一臺(tái)機(jī)器上使用這個(gè)鏡像時(shí),只需從倉(cāng)庫(kù)獲取。
Docker 的鏡像、容器、日志等內(nèi)容全部都默認(rèn)存儲(chǔ)在 /var/lib/docker 目錄下。
Docker鏡像和容器的區(qū)別詳解?
當(dāng)想讓一個(gè)容器做兩件事情,或者使一個(gè)Docker鏡像包含來(lái)自兩個(gè)不同鏡像的依賴庫(kù)時(shí),就需要知道每個(gè)鏡像的Dockerfile。本文介紹了如何通過(guò)dockerhistory命令來(lái)對(duì)Docker鏡像進(jìn)行反向工程,得到它們的Dockerfile,并組織到一個(gè)Dockerfile里然后build,從而實(shí)現(xiàn)想做的事情。
常言道,“不要重復(fù)發(fā)明輪子!”
在使用Docker時(shí),構(gòu)建自己的鏡像之前,最好在DockerHub尋找一些可以直接使用的鏡像做練習(xí)。把軟件架構(gòu)分布到一系列容器中,每一個(gè)容器只做一件事情,這樣的效果非常好。構(gòu)建分布式應(yīng)用的最好的基石是使用來(lái)自DockerHub的官方鏡像,因?yàn)榭梢孕湃嗡鼈兊馁|(zhì)量。
在某些情況下,可能想讓一個(gè)容器做兩件不同的事情。而在另外一些情況下,可能想讓一個(gè)Docker鏡像包含來(lái)自兩個(gè)不同鏡像的依賴庫(kù)。如果有每個(gè)鏡像的Dockerfile,這是非常簡(jiǎn)單的。將它們組織到一個(gè)Dockerfile里然后build就行。
然而,大多數(shù)時(shí)間都在使用DockerHub上準(zhǔn)備好的鏡像,不會(huì)有它們的源Dockerfile。我花時(shí)間找一個(gè)可以合并(或flatten)兩個(gè)不同Docker鏡像的工具,當(dāng)然沒(méi)有它們的Dockerfile。也就是說(shuō)在找一個(gè)能做下面這件事的東西:
image1--
\
--->merged_image_12
image2--
到此,以上就是小編對(duì)于docker 容器和鏡像的關(guān)系的問(wèn)題就介紹到這了,希望這3點(diǎn)解答對(duì)大家有用。
網(wǎng)站標(biāo)題:docker容器和鏡像的關(guān)系(docker如何管理?)
路徑分享:http://m.fisionsoft.com.cn/article/dpsecsi.html


咨詢
建站咨詢
