av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Docker鏡像管理常用操作代碼示例

瀏覽:3日期:2024-11-16 15:00:24

鏡像也是docker的核心組件之一,鏡像時容器運(yùn)行的基礎(chǔ),容器是鏡像運(yùn)行后的形態(tài)。總體來說,鏡像是一個包含程序運(yùn)行必要以來環(huán)境和代碼的只讀文件,它采用分層的文件系統(tǒng),將每一層的改變以讀寫層的形式增加到原來的只讀文件上。

鏡像與容器的關(guān)系

前文已經(jīng)向讀者介紹過容器的使用了,細(xì)心的讀者可能已經(jīng)發(fā)現(xiàn),容器在啟動或者創(chuàng)建時,必須指定一個鏡像的名稱或者id,其實,這時鏡像所扮演的角色就是容器的模版,不同的鏡像可以構(gòu)造出不同的容器。如下命令:

docker run -itd --name nginx nginx

命令中的最后一個nginx即表示創(chuàng)建該容器所需要的模板

鏡像的體系結(jié)構(gòu)

鏡像的最底層是一個啟動文件系統(tǒng)(bootfs)鏡像,bootfs的上層鏡像叫做根鏡像,一般來說,根鏡像是一個操作系統(tǒng),例如Ubuntu、CentOS等,用戶的鏡像必須構(gòu)建于根鏡像之上,在根鏡像之上,用戶可以構(gòu)建出各種各樣的其他鏡像。從上面的介紹讀者可以看出,鏡像的本質(zhì)其實就是一系列文件的集合,一層套一層的結(jié)構(gòu)有點類似于Git。

鏡像的寫時復(fù)制機(jī)制

通過docker run 命令指定一個容器創(chuàng)建鏡像時,實際上是在該鏡像上創(chuàng)建一個空的可讀寫的文件系統(tǒng)層級,可以將這個文件系統(tǒng)層級當(dāng)成一個臨時的鏡像來對待,而命令中所指的模版鏡像則可以稱之為父鏡像。父鏡像的內(nèi)容都是以只讀的方式掛載進(jìn)來的,容器會讀取共享父鏡像的內(nèi)容,用戶所做的所有修改都是在文件系統(tǒng)中,不會對父鏡像造成任何影響。當(dāng)然用戶可以通過其他一些手段使修改持久化到父鏡像中,這個我們后面會詳細(xì)介紹到。

查看

docker images

用戶可以通過docker images命令查看本地所有鏡像

Docker鏡像管理常用操作代碼示例

這里一共有五個參數(shù):

1.REPOSITORY

倉庫名稱,倉庫一般用來存放同一類型的鏡像,倉庫的名稱由其創(chuàng)建者指定。如果沒有指定則為。一般來說,倉庫名稱有如下幾種不同的形式。

[namespaceubuntu]:這種倉庫名稱由命名空間和實際的倉庫名組成,中間通過隔開。當(dāng)開發(fā)者在Docker Hub上創(chuàng)建一個用戶時,用戶名就是默認(rèn)的命名空間,這個命令空間是用來區(qū)分Docker Hub上注冊的不同用戶或者組織(類似于GitHub上用戶名的作用),如果讀者想將自己的鏡像上傳到DockerHub上供別人使用,則必須指定命名空間。 [ubuntu]:這種只有倉庫名,對于這種沒有命名空間的倉庫名,可以認(rèn)為其屬于頂級命名空間,該空間的倉庫只用于官方的鏡像,由Docker官方進(jìn)行管理,但一般會授權(quán)給第三方進(jìn)行開發(fā)維護(hù)。當(dāng)然用戶自己創(chuàng)建的鏡像也可以使用這種命名方式,但是將無法上傳到Docker Hub上共享。 [hub.c.163.com/library/nginx]:這種指定url路徑的方式,一般用于非Docker Hub上的鏡像命名,例如一個第三方服務(wù)商提供的鏡像或者開發(fā)者自己搭建的鏡像中心,都可以使用這種命名方式命名。

2.TAG 用于區(qū)分同一倉庫的不同鏡像,默認(rèn)為latest

3.IMAGE ID 是鏡像的一個唯一標(biāo)識符

4.CREATED 鏡像的創(chuàng)建時間

5.SIZE 表示鏡像大小

使用docker images命令可以查看本地所有的鏡像,如果鏡像過多,可以通過通配符進(jìn)行匹配,如下:

Docker鏡像管理常用操作代碼示例

如果需要查看鏡像的詳細(xì)信息,也可以通過上文提到的docker inspect 命令來查看下載

當(dāng)用戶執(zhí)行docker run命令時,就會自動去Docker Hub上下載相關(guān)的鏡像,這個就不再重復(fù)演示,開發(fā)者也可以通過search命令去Docker Hub上搜索符合要求的鏡像,如下:

Docker鏡像管理常用操作代碼示例

其中:

NAME:表示鏡像的名稱 DESCRIPTION:表示鏡像的簡要描述 STARS:表示用戶對鏡像的評分,評分越高越可以放心使用。 OFFICIAL:是否為官方鏡像 AUTOMATED: 是否使用了自動構(gòu)建

在執(zhí)行docker run命令再去下載,速度會有點慢,如果希望該命令能夠快速執(zhí)行,可以在執(zhí)行之前,先利用docker pull命令將鏡像先下載下來,然后在運(yùn)行。

Docker鏡像管理常用操作代碼示例

運(yùn)行命令如下:

Docker鏡像管理常用操作代碼示例

刪除

鏡像可以通過docker rmi命令進(jìn)行刪除,參數(shù)為鏡像的id或者鏡像名,參數(shù)可以有多個,多個參數(shù)之間空格隔開,如下:Docker鏡像管理常用操作代碼示例

有的時候,無法刪除一個鏡像,大部分原因是因為該鏡像被一個容器所依賴,此時需要先刪除容器,然后就可以刪除鏡像了。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Docker
相關(guān)文章:
主站蜘蛛池模板: av一区二区三区 | 亚洲精品91 | 在线婷婷 | 一区在线视频 | 成人一区二区视频 | 午夜羞羞| 在线观看一区 | 草久久| 日韩精品在线一区 | 亚洲人在线观看视频 | jlzzxxxx18hd护士| 久久黄视频 | 色综合天天天天做夜夜夜夜做 | 一区二区三区亚洲 | 日韩三级电影一区二区 | 欧美综合国产精品久久丁香 | 日本天天色 | 91精品国产91久久久久久 | 欧美视频区 | 国产成人精品在线 | 91婷婷韩国欧美一区二区 | 色婷婷av一区二区三区软件 | 亚洲视频免费观看 | 亚洲一区在线日韩在线深爱 | 精品欧美在线观看 | 一区二区三区视频 | www.亚洲.com | 国产永久免费 | 久久久久久久国产 | 久久国产高清 | 国产专区在线 | 精品一区二区三区免费视频 | 欧美日本一区 | www.日日操 | 国产美女视频 | 日韩精品a在线观看图片 | 中文字幕 在线观看 | 青青久久 | 国产精品一区二区三区四区 | 日韩一区二区三区精品 | 日韩a在线|