最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker鏡像的commit操作示例及作用

 更新時間:2022年04月13日 17:44:39   作者:Tiamon_  
這篇文章主要為大家介紹了Docker鏡像的commit操作示例及作用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪

Docker 鏡像是什么

 UnionFS(聯(lián)合文件系統(tǒng))

UnionFS(聯(lián)合文件系統(tǒng)):Union文件系統(tǒng)是一種分層、輕量級并且高性能的文件系統(tǒng),它支持對文件系統(tǒng)的修改作為一次提交來一層層的疊加,同時可以將不同目錄掛載到同一個虛擬文件系統(tǒng)下(unite several directories into a single virtual filesystem)。Union文件系統(tǒng)是Docker 鏡像的基礎(chǔ)。鏡像可以通過分層來進(jìn)行繼承,基于基礎(chǔ)鏡像(沒有父鏡像),可以制作各種具體的應(yīng)用鏡像。

特性:一次同時加載多個文件系統(tǒng),但從外面看起來,只能看到一個文件系統(tǒng),聯(lián)合加載會把各層文件系統(tǒng)疊加起來,這樣最終的文件系統(tǒng)會包含所有底層的文件和目錄。

Docker 鏡像加載原理

在這里插入圖片描述

docker 的鏡像實(shí)際上是由一層層的文件系統(tǒng)組成,這種層級的文件系統(tǒng) UnionFS。

bootfs(boot file system)主要包含 bootloader 和 kernel,bootloader 主要是引導(dǎo)加載 kernel,Linux 剛啟動時會加載 bootfs 文件系統(tǒng),在 Docker 鏡像的最底層是 botfs。這一層與我們典型的 Linux/Unix 系統(tǒng)是一樣的,包含 boot 加載器和內(nèi)核。當(dāng) boot 加載完成之后整個內(nèi)核就都在內(nèi)存中了,此時內(nèi)存的使用權(quán)已由 bootfs 轉(zhuǎn)交給內(nèi)核,此時系統(tǒng)也會卸載 bootfs。

rootfs (root file system),在 bootfs 之上,包含的就是典型 Linux 系統(tǒng)中的 /dev,/proc,/bin,/etc 等標(biāo)準(zhǔn)目錄和文件。rootfs 就是各種不同的操作系統(tǒng)發(fā)行版,比如 Ubuntu,Centos 等等。

對于一個精簡的OS,rootfs 可以很小,只需要包括最基本的命令、工具和程序庫就可以了,因此底層直接用 Host 的kernel,自己只需要提供 rootfs 就行了。由此可見對于不同的 Linux 發(fā)行版嗎,bootfs 基本是一致的,rootfs 會有差別因此不同的發(fā)行版本可以公用bootfs。

分層的鏡像

在這里插入圖片描述

我們以 tomcat 鏡像為例,在下載的過層中可以看到 docker 的鏡像好像是在一層一層的在下載。

在這里插入圖片描述

  • 為什么 Docker 鏡像要采用這種分層結(jié)構(gòu)

最大的好處就是-共享資源
比如:有多個鏡像都是從相同的 base 鏡像構(gòu)建而來,那么宿主機(jī)只需要在磁盤上保存一份 base 鏡像,同時內(nèi)存中也只需要加載一份 base 鏡像,就可以為所有容器服務(wù)了。而且鏡像的每一層都可以被共享。

  • 特點(diǎn)

Docker 鏡像都是只讀的,當(dāng)容器啟動時,一個新的可寫層被加載到鏡像的頂部。這一層通常被稱作“容器層”,“容器層”之下的都叫做“鏡像層”。

Docker 鏡像 commit 操作

docker commit 能做什么

docker commit
提交容器副本使之成為一個新的鏡像docker

commit 格式

docker commit -m='提交的描述信息' -a='作者' 容器ID 新鏡像名:標(biāo)簽

 案例演示

下載一個 tomcat 鏡像到本地并成功運(yùn)行

[root@docker ~]# docker pull tomcat
[root@docker ~]# docker run -d -p 8888:8080 tomcat

進(jìn)入容器并在 / 目錄下創(chuàng)建文件 test,退出容器

[root@docker ~]# docker exec -it $(docker ps -q) bash
root@4004f1503c75:/usr/local/tomcat# touch /test
root@4004f1503c75:/usr/local/tomcat# exit

當(dāng)前正在運(yùn)行的 tomcat 容器,根目錄下新創(chuàng)建了一個 test 文件,以它為模板 commit 一個根目錄下有 test 文件的 tomcat 鏡像

#新鏡像創(chuàng)建成功
	[root@docker ~]# docker commit -a="test" -m="test" $(docker ps -q) tomcat:test
	sha256:1dcb7604643bb29e47420f7a4d40582564a89df59fd3ae4602e72a84f27af9db
	[root@docker ~]# docker images
	REPOSITORY          TAG                 IMAGE ID            CREATED              SIZE
	tomcat              test                1dcb7604643b        About a minute ago   649 MB
	tocmat              latest              625b734f984e        41 hours ago         648 MB

啟動新鏡像 tomcat:test,查看 / 目錄下是否具有 test 文件

[root@docker ~]# docker run -d  tomcat:test
[root@docker ~]# docker exec -it ec738896bc67 ls /test
/test

以上就是Docker鏡像的commit操作示例及作用的詳細(xì)內(nèi)容,更多關(guān)于Docker鏡像commit操作的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 教你docker方式部署nacos

    教你docker方式部署nacos

    Nacos?提供了一組簡單易用的特性集,幫助您快速實(shí)現(xiàn)動態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置、服務(wù)元數(shù)據(jù)及流量管理,下面通過本文給大家講解docker方式部署nacos的過程,感興趣的朋友一起看看吧
    2022-05-05
  • Docker rocketmq部署的實(shí)現(xiàn)示例

    Docker rocketmq部署的實(shí)現(xiàn)示例

    最近學(xué)習(xí)使用 rocketmq,需要搭建 rocketmq 服務(wù)端,本文主要記錄 rocketmq 搭建過程以及這個過程踩到的一些坑,感興趣的可以了解一下
    2021-12-12
  • Dockerfile中的copy命令使用

    Dockerfile中的copy命令使用

    在使用Dockerfile中的copy命令時,如果使用相對路徑并且文件不在當(dāng)前目錄下,會導(dǎo)致構(gòu)建失敗,需要使用絕對路徑或者將文件移動到Dockerfile所在的目錄下
    2025-02-02
  • Docker內(nèi)網(wǎng)穿透frp部署實(shí)現(xiàn)過程解析

    Docker內(nèi)網(wǎng)穿透frp部署實(shí)現(xiàn)過程解析

    這篇文章主要介紹了Docker內(nèi)網(wǎng)穿透frp部署實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • docker進(jìn)行RocketMq集群部署方式

    docker進(jìn)行RocketMq集群部署方式

    這篇文章主要介紹了docker進(jìn)行RocketMq集群部署方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Ollma本地部署Qwen2.5 14B的詳細(xì)過程(不使用docker)

    Ollma本地部署Qwen2.5 14B的詳細(xì)過程(不使用docker)

    本文介紹了如何在不使用Docker的情況下部署Ollama模型和Open-webui實(shí)現(xiàn)可視化界面,Ollama模型通過命令行操作,包括啟動、創(chuàng)建、運(yùn)行等,Open-webui則需要安裝Anaconda環(huán)境,安裝并啟動服務(wù)后,通過瀏覽器訪問即可使用,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • Docker-利用dockerfile來搭建tomcat服務(wù)的方法

    Docker-利用dockerfile來搭建tomcat服務(wù)的方法

    這篇文章主要介紹了Docker-利用dockerfile來搭建tomcat服務(wù)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • docker容器的原理分析

    docker容器的原理分析

    這篇文章主要介紹了docker容器的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用docker容器,感興趣的朋友可以了解下
    2021-04-04
  • Docker使用Dockerfile創(chuàng)建支持ssh服務(wù)自啟動的容器鏡像

    Docker使用Dockerfile創(chuàng)建支持ssh服務(wù)自啟動的容器鏡像

    這篇文章主要介紹了Docker使用Dockerfile創(chuàng)建支持ssh服務(wù)自啟動的容器鏡像,需要的朋友可以參考下
    2016-10-10
  • CentOS8下的Docker使用詳解

    CentOS8下的Docker使用詳解

    這篇文章主要介紹了CentOS8下的Docker使用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11

最新評論

二手房| 图们市| 桐乡市| 西乌珠穆沁旗| 泌阳县| 泌阳县| 嵊泗县| 永丰县| 武汉市| 大兴区| 巴塘县| 金乡县| 信阳市| 涿鹿县| 武冈市| 商水县| 新蔡县| 周口市| 上栗县| 四川省| 洮南市| 鄢陵县| 广河县| 定兴县| 横峰县| 新兴县| 祁阳县| 庐江县| 呼伦贝尔市| 平乐县| 晋江市| 泽州县| 绥滨县| 南投县| 武功县| 尼木县| 平邑县| 新巴尔虎右旗| 凤台县| 翁牛特旗| 迭部县|