婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Docker鏡像加載原理

Docker鏡像加載原理

熱門標簽:河南防封號電銷機器人是什么 怎么找到沒有地圖標注的店 上海申請高400開頭的電話 麗江真人語音電話外呼系統 400電話辦理介紹信 宿城區電話機器人找哪家 打400電話怎么辦理收費 10086外包用的什么外呼系統 福州企業電銷機器人排名

Docker鏡像

鏡像是什么?

  •  鏡像是一種輕量級、可執行的獨立軟件包,用來打包軟件運行環境和基于運行環境開發的軟件,它包含運行某個軟件所需的所有內容,包括代碼、運行時、環境變量配置文件
  • 所有的應用,直接打包docker鏡像,就可以直接跑起來!
  • 如何得到鏡像?

遠程倉庫下載

朋友拷貝

自己制作一個鏡像 DockerFile

Docker鏡像加載原理

UnionFS(聯合文件系統)

  • UnionFS (聯合文件系統) :Union文件系統(UnionFS)是一種分層輕量級并且高性能的文件系統,它支持對文件系統的修改作為一次提交來一層層的疊加,同時可以將不同目錄掛載到同一個虛擬文件系統下(unite several directories into a single virtualfilesystem)。Union文件系統是Docker鏡像的基礎。鏡像可以通過分層來進行繼承,基于基礎鏡像(沒有父鏡像),可以制作各種具體的應用鏡像。
  • 特性:一次同時加載多個文件系統,但從外面看起來,只能看到一個文件系統,聯合加載會把各層文件系統疊加起來,這樣最終的文件系統會包含所有底層的文件和目錄

Docker鏡像加載原理

  • docker的鏡像實際上由一層一層的文件系統組成,這種層級的文件系統UnionFS。
  • bootfs(boot file system)主要包含bootloader和kernel, bootloader主要是引導加載kernel, Linux剛啟動時會加載bootfs文件系統,在Docker鏡像的最底層是boots。這一層與我們典型的Linux/Unix系統是一樣的,包含boot加載器和內核。當boot加載完成之后整個內核就都在內存中了,此時內存的使用權已由bootfs轉交給內核,此時系統也會卸載bootfs。
  • roots (root fle system),在bootfs之上。包含的就是典型Linux系統中的/dev,/proc, /bin, /etc等標準目錄和文件。rootfs就是各種不同的操作系統發行版,比如Ubuntu ,Centos等等。

平時我們安裝虛擬機的CentOS都是好幾個G,為什么Docker才200M?

  • 對于一個精簡的OS,rootfs 可以很小,只需要包含最基本的命令,工具和程序庫就可以了,因為底層直接用Host的kernel自己只需要提供roots就可以了。由此可見對于不同的linux發行版, bootfs基本是一致的, rootfs會有差別,因此不同的發行版可以公用bootfs。
  • 虛擬機是分鐘級別,容器是秒級! 分層理解 Docker的分層思想一層一層下載,逐層檢測,存在即跳過,否則下載
[root@docker ~]# docker pull redis 
Using default tag: latest
latest: Pulling from library/redis
69692152171a: Already exists 
a4a46f2fd7e0: Pull complete 
bcdf6fddc3bd: Pull complete 
2902e41faefa: Pull complete 
df3e1d63cdb1: Pull complete 
fa57f005a60d: Pull complete 
Digest: sha256:7e2c6181ad5c425443b56c7c73a9cd6df24a122345847d1ea9bb86a5afc76325
Status: Downloaded newer image for redis:latest
docker.io/library/redis:latest
  • 為什么Docker鏡像要采用這種分層的結構呢?
  • 最大的好處,我覺得莫過于是資源共享了!比如有多個鏡像都從相同的Base鏡像構建而來,那么宿主機只需在磁盤上保留一份base鏡像,同時內存中也只需要加載一份base鏡像,這樣就可以為所有的容器服務了,而且鏡像的每一層都可以被共享。
  • 查看鏡像分層的方式可以通過docker image inspect +容器命令!
  • 觀察Layers(層)

理解分層的含義

  •  所有的Docker鏡像都起始于一個基礎鏡像層,當進行修改或增加新的內容時,就會在當前鏡像層之上,創建新的鏡像層
  • 舉一個簡單的例子,假如基于Ubuntu Linux 16.04創建一個新的鏡像,這就是新鏡像的第一層;如果在該鏡像中添加Python包,就會在基礎鏡像層之上創建第二個鏡像層;如果繼續添加一個安全補丁,就會創建第三個鏡像層。
  • 該鏡像當前已經包含3個鏡像層,如下圖所示(這只是一個用于演示的很簡單的例子)。

 

在添加額外的鏡像層的同時,鏡像始終保持是當前所有鏡像的組合,理解這一點非常重要。下圖中舉了一個簡單的例子,每個鏡像層包含3個文件,而鏡像包含了來自兩個鏡像層的6個文件。

  • 上圖中的鏡像層跟之前圖中的略有區別,主要目的是便于展示文件。
  • 下圖中展示了一個稍微復雜的三層鏡像,在外部看來整個鏡像只有6個文件,這是因為最上層中的文件7是文件5的一個更新版本。

  • 這種情況下,上層鏡像層中的文件覆蓋了底層鏡像層中的文件。這樣就使得文件的更新版本作為一個新鏡像層添加到鏡像當中。
  • Docker通過存儲引擎(新版本采用快照機制)的方式來實現鏡像層堆棧,并保證多鏡像層對外展示為統一的文件系統。
  • Linux上可用的存儲引擎有AUFS、Overlay2、Device Mapper、Btrfs以及ZFS。顧名思義,每種存儲引擎都基于Linux中對應的文件系統或者塊設備技術,并且每種存儲引擎都有其獨有的性能特點。
  • Docker在Windows上僅支持windowsfilter一種存儲引擎,該引擎基于NTFS文件系統之上實現了分層和CoW[1].
  • 下圖展示了與系統顯示相同的三層鏡像。所有鏡像層堆疊并合并,對外提供統一的視圖。

分層下載的好處

假設有些應用的層是相同的,就可以直接復用!

特點

  •  Docker鏡像都是只讀的,當容器啟動時,一個新的可寫層被加載到鏡像的頂部!
  • 這一層就是我們通常說的容器層(run),容器之下的都叫鏡像層(遠程pull)!
  • 所有操作都是基于容器層

 

Commit鏡像

  • 如何提交一個自己的鏡像?
  • Docker commit
docker commit 提交容器成為一個新的副本

docker commit -m="提交的描述信息" -a="作者" 容器id 目標鏡像名:[TAG]

#運行一個默認的tomcat鏡像
[root@docker ~]# docker run -it -p 8080:8080  tomcat

[root@docker ~]# docker ps
CONTAINER ID   IMAGE     COMMAND             CREATED          STATUS          PORTS                                       NAMES
792ca37197e8   tomcat    "catalina.sh run"   34 seconds ago   Up 32 seconds   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   upbeat_mcnulty

[root@docker ~]# docker exec -it 792ca37197e8 /bin/bash
#發現這個默認的tomcat 是沒有webapps應用,是因為鏡像的原因,官方的鏡像默認webapps下沒有文件,自己拷貝進去基本的文件
root@792ca37197e8:/usr/local/tomcat# cp -r webapps.dist/* webapps

#瀏覽器訪問,測試成功
http://192.168.100.100:8080/

#提交修改后的容器成為一個新的鏡像
[root@docker ~]# docker commit -a="pakho" -m="add webapps app" 792ca37197e8 tomcat02:1.0
sha256:d6d429f9d2ba25af8f66bd3e7a7de489cf2219828ea755ce1d0a1a7816c27731

[root@docker ~]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED          SIZE
tomcat02              1.0       d6d429f9d2ba   28 seconds ago   672MB

Docker鏡像(Images)總結

  • Docker鏡像(Images) 的主要特點是,分層、寫時復制、內容尋址 和 聯合掛載。
  • Docker鏡像是Docker容器運行的基礎,沒有Docker鏡像,就不可能有Docker容器,這也是Docker的設計原則之一
  • 可以理解的是:Docker鏡像畢竟是鏡像,屬于靜態的內容;而Docker容器就不一樣了,容器屬于動態的內容。動態的內容,大家很容易聯想到進程,內存,CPU等之類的東西。的確,Docker容器作為動態的內容,都會包含這些
  • 為了便于理解,大家可以把Docker容器,理解為一個或多個運行進程,而這些運行進程將占有相應的內存,相應的CPU計算資源,相應的虛擬網絡設備以及相應的文件系統資源。而Docker容器所占用的文件系統資源,則通過Docker鏡像的鏡像層文件來提供

以上就是Docker鏡像原理的詳細內容,更多關于Docker鏡像的資料請關注腳本之家其它相關文章!

標簽:面試通知 運城 荊門 隴南 連云港 朝陽 雞西 遵義

巨人網絡通訊聲明:本文標題《Docker鏡像加載原理》,本文關鍵詞  Docker,鏡像,加載,原理,Docker,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Docker鏡像加載原理》相關的同類信息!
  • 本頁收集關于Docker鏡像加載原理的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品拍天天在线| 波多野结衣中文字幕一区| 日韩福利视频导航| 日本韩国一区二区| 国产精品久久夜| 99久久99久久精品免费观看| 久久精品欧美一区二区三区不卡| 久久国产精品99精品国产| 日韩欧美国产不卡| 国产一区二区在线看| 国产区在线观看成人精品| 国产精品996| 亚洲欧洲精品一区二区三区| a在线欧美一区| 亚洲一线二线三线视频| 欧美日韩国产一区| 久久精品久久综合| 国产精品伦理在线| 欧美日韩国产影片| 成人午夜在线视频| 午夜精品视频在线观看| 亚洲精品一区二区三区精华液| 国产精品动漫网站| 欧美日韩国产不卡| 丁香一区二区三区| 国产精品18久久久久久久网站| 欧美国产激情二区三区| 3d动漫精品啪啪一区二区竹菊| 激情六月婷婷久久| 一区二区三区在线视频免费| 精品日产卡一卡二卡麻豆| 99久久精品国产导航| 久久69国产一区二区蜜臀 | 亚洲国产欧美在线| 久久久久久日产精品| 欧美日韩国产综合一区二区三区| 成人丝袜视频网| 国产麻豆成人传媒免费观看| 亚洲国产视频网站| 国产精品国产三级国产普通话蜜臀 | 一二三区精品福利视频| 日韩视频免费观看高清完整版在线观看| 国产福利一区二区三区视频在线| 日韩国产成人精品| 日产国产欧美视频一区精品| 亚洲一区视频在线| 亚洲欧洲三级电影| 国产精品成人免费| 亚洲欧美电影院| 亚洲一区二区三区爽爽爽爽爽| 秋霞成人午夜伦在线观看| 亚洲人成伊人成综合网小说| 成人欧美一区二区三区黑人麻豆| 国产精品人人做人人爽人人添| 久久蜜桃av一区二区天堂 | 国产福利电影一区二区三区| 日韩av中文字幕一区二区三区| 秋霞午夜av一区二区三区| 韩国精品在线观看| 91片黄在线观看| 日韩欧美你懂的| 亚洲另类一区二区| 国产精品乱人伦中文| 久久免费看少妇高潮| 国产日韩欧美精品电影三级在线| 国产精品麻豆一区二区 | 亚洲国产色一区| 久久99热国产| 色美美综合视频| 亚洲精品一区二区精华| 亚洲欧洲另类国产综合| 午夜精品一区二区三区免费视频| 国模无码大尺度一区二区三区 | 亚洲手机成人高清视频| 日韩黄色一级片| 日本韩国一区二区三区视频| 久久九九国产精品| 免费人成在线不卡| 欧美精品高清视频| 亚洲一本大道在线| 91福利在线看| 亚洲天堂免费看| www.爱久久.com| 中文字幕一区二区三区视频| 九九久久精品视频| 欧美第一区第二区| 久久99精品久久久久久久久久久久| 欧美在线高清视频| 日韩精品欧美精品| 日韩一区二区免费在线观看| 日产欧产美韩系列久久99| 欧美视频中文一区二区三区在线观看| 国产精品综合二区| 成人动漫在线一区| 色偷偷一区二区三区| 精品伊人久久久久7777人| 伊人婷婷欧美激情| 欧美大片顶级少妇| 成人午夜激情片| 日韩欧美一级特黄在线播放| 精品免费日韩av| 中文字幕色av一区二区三区| 色呦呦国产精品| 亚洲欧洲国产专区| av欧美精品.com| 亚洲黄一区二区三区| 欧美在线免费观看视频| 亚洲国产cao| 日韩精品一区二区三区三区免费| 婷婷开心激情综合| 日韩精品资源二区在线| 懂色中文一区二区在线播放| 精品99久久久久久| 日韩国产欧美在线播放| 日本不卡视频在线| 这里只有精品视频在线观看| 韩国精品一区二区| 亚洲日本电影在线| 欧美精品一区二区高清在线观看| 粉嫩绯色av一区二区在线观看| 亚洲一区二区免费视频| 中文子幕无线码一区tr| 精品久久国产老人久久综合| 欧美性猛交xxxxxxxx| 国产精品一区二区久久不卡 | 欧美一级精品大片| 成人免费视频播放| 国产99久久久国产精品免费看| 另类综合日韩欧美亚洲| 亚洲精品高清视频在线观看| 中文字幕乱码久久午夜不卡 | 韩国女主播成人在线观看| 免费av网站大全久久| 五月激情六月综合| 一区二区在线观看不卡| 尤物视频一区二区| 亚洲精品免费在线| 一区二区三区高清不卡| 亚洲成va人在线观看| 日韩精品色哟哟| 久久av老司机精品网站导航| 午夜欧美大尺度福利影院在线看 | 午夜私人影院久久久久| 亚洲一线二线三线视频| 亚洲五码中文字幕| 日韩av不卡在线观看| 麻豆精品在线播放| 粉嫩嫩av羞羞动漫久久久| 99精品视频中文字幕| 欧美图片一区二区三区| 欧美日本国产一区| 久久精品人人做人人综合| 国产精品情趣视频| 亚洲成人你懂的| 另类小说欧美激情| 91麻豆福利精品推荐| 91精品在线免费| 欧美国产一区二区| 婷婷成人激情在线网| 国产精品99久久久久| 91免费在线播放| 国产视频一区在线播放| 亚洲综合免费观看高清完整版在线 | 激情深爱一区二区| 欧美在线综合视频| 中文字幕日本不卡| 捆绑调教一区二区三区| 91亚洲精品乱码久久久久久蜜桃| 欧美亚一区二区| 亚洲欧美偷拍三级| 国产一区二区在线电影| 日韩精品资源二区在线| 午夜国产精品影院在线观看| 色老头久久综合| 最新久久zyz资源站| 国产精品一区二区黑丝| 日韩欧美成人一区二区| 免费成人美女在线观看.| 91精品国产综合久久香蕉的特点 | 亚洲人成电影网站色mp4| 午夜精品一区在线观看| 色素色在线综合| 一区二区在线观看视频| 日本黄色一区二区| 日本欧美在线观看| 日韩三级在线免费观看| 免费观看成人鲁鲁鲁鲁鲁视频| 日韩一区二区三区免费看| 久久精品国产精品亚洲综合| 久久久99久久| 在线观看91视频| 美女性感视频久久| 国产精品久久久久久久第一福利| 99亚偷拍自图区亚洲| 天天色天天操综合| 欧美成人激情免费网| 成人av先锋影音| 久久97超碰国产精品超碰| 中文字幕在线观看不卡| 欧美日韩电影在线播放|