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

查找每個Docker鏡像的層和層大小的兩種方法

 更新時間:2023年10月09日 10:37:34   作者:極客  
本文主要介紹了查找每個Docker鏡像的層和層大小的兩種方法,這對于識別可能導致鏡像整體大小的大型層,以及確定哪些層可以被刪除或優(yōu)化以減少鏡像的大小是非常有用的,感興趣的可以了解一下

簡介

通過使用容器化,我們可以快速設置和配置我們的部署環(huán)境,這有助于我們節(jié)省時間和資源。考慮到 “一次編寫,隨地部署 “的目標,容器化可以幫助我們簡化現代應用程序的部署過程,而這可能是復雜的。

尋找Docker鏡像的層和層大小

在這篇文章中,我們將探討如何找到每個Docker鏡像的層和層大小。這對于識別可能導致鏡像整體大小的大型層,以及確定哪些層可以被刪除或優(yōu)化以減少鏡像的大小是非常有用的。

方法

  • 使用Dockerfile

  • 使用Docker Image Inspect命令

讓我們詳細了解其中的每一項,并通過實例看到它們的作用。

使用Dockerfile

示例

第1步 – 為你的項目創(chuàng)建一個新的目錄,并導航到該目錄 —

$ mkdir directoryname 
$ cd directoryname

第2步 – 在這個新目錄下制作一個名為 “Dockerfile “的文件,內容如下 —

FROM alpine:latest 
RUN apk add --no-cache curl

這包括建立你的圖像的說明以及基本圖像。

第3步 – 在終端運行docker build命令,使用Dockerfile構建鏡像—-。

docker build -t myimage .

第4步 – 要檢查圖層和圖層大小,在終端運行docker images命令,列出系統中所有可用的圖像–

docker images

輸出

REPOSITORY        TAG      IMAGE ID       CREATED        SIZE
myimage           latest   499a9ddb3acd   2 minutes ago  9.29MB
docker-apps       latest   eb6dda32a60d   3 hours ago    176MB
docker101tutorial latest   1ebfcd22ec64   3 hours ago    47MB
ubuntu            latest   6b7dfa7e8fdb   4 weeks ago    77.8MB
alpine/git        latest   22d84a66cda4   7 weeks ago    43.6MB

第5步 – 在終端運行docker inspect命令來檢查鏡像并獲得其細節(jié),包括層和它們的大小。

docker inspect IMAGE_ID

輸出

docker inspect 499a9ddb3acd
[
   {
      "Id": "sha256:499a9ddb3acdf2117fdb4df826e0782d05d01aa8d1c0574c96e7bed6fbbcf698",
      "RepoTags": [
         "myimage:latest"
      ],
      "RepoDigests": [],
      "Parent": "",
      "Comment": "buildkit.dockerfile.v0",
      "Created": "2023-01-08T07:49:58.294267525Z",
      "Container": "",
      "ContainerConfig": {
         "Hostname": "",
         "Domainname": "",
         "User": "",
         "AttachStdin": false,
         "AttachStdout": false,
         "AttachStderr": false,
         "Tty": false,
         "OpenStdin": false,
         "StdinOnce": false,
         "Env": null,
         "Cmd": null,
         "Image": "",
         "Volumes": null,
         "WorkingDir": "",
         "Entrypoint": null,
         "OnBuild": null,
         "Labels": null
      },
      "DockerVersion": "",
      "Author": "",
      "Config": {
         "Hostname": "",
         "Domainname": "",
         "User": "",
         "AttachStdin": false,
         "AttachStdout": false,
         "AttachStderr": false,
         "Tty": false,
         "OpenStdin": false,
         "StdinOnce": false,
         "Env": [
            "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
         ],
         "Cmd": [
            "/bin/sh"
         ],
         "Image": "",
         "Volumes": null,
         "WorkingDir": "",
         "Entrypoint": null,
         "OnBuild": null,
         "Labels": null
      },
      "Architecture": "amd64",
      "Os": "linux",
      "Size": 9292948,
      "VirtualSize": 9292948,
      "GraphDriver": {
         "Data": {
            "LowerDir": "/var/lib/docker/overlay2/e4c1f1bb76c66c5d1781a775c8a2ca9338065ea0b398aeaed4230a00a15d2952/diff",
            "MergedDir": "/var/lib/docker/overlay2/osfaf1c97lm7awgfbaqibrt6p/merged",
            "UpperDir": "/var/lib/docker/overlay2/osfaf1c97lm7awgfbaqibrt6p/diff",
            "WorkDir": "/var/lib/docker/overlay2/osfaf1c97lm7awgfbaqibrt6p/work"
         },
         "Name": "overlay2"
      },
      "RootFS": {
         "Type": "layers",
         "Layers": [
            "sha256:ded7a220bb058e28ee3254fbba04ca90b679070424424761a53a043b93b612bf",
            "sha256:19bc0373c06b6727c115ef34961486b1a9f3b7c8ccbd3441c4b108aeef2b338d"
         ]
      },
      "Metadata": {
         "LastTagTime": "2023-01-08T07:49:58.412703277Z"
      }
   }
]

使用Docker Image Inspect命令

“docker image inspect “命令允許我們探索關于Docker鏡像的全面細節(jié),比如它的層數和大小。

下面的步驟可以用來獲得Docker鏡像的層和層大小——。

第1步 – 通過打開終端或命令提示符,進入包含你的Docker鏡像的目錄。

第2步 – 要查看所有可訪問的Docker鏡像,請在終端運行以下命令 —

docker image ls

輸出

REPOSITORY         TAG     IMAGE ID       CREATED           SIZE
myimage           latest   499a9ddb3acd   17 minutes ago    9.29MB
docker-apps       latest   eb6dda32a60d   3 hours ago       176MB
docker101tutorial latest   1ebfcd22ec64   3 hours ago       47MB
ubuntu            latest   6b7dfa7e8fdb   4 weeks ago       77.8MB
alpine/git        latest   22d84a66cda4   7 weeks ago       43.6MB

第3步 – 選擇你想檢查的圖像,并記下你之前輸出的ID。在這個例子中,我們將利用ID為 “499a9ddb3acd “的圖像。

第4步

docker image inspect 499a9ddb3acd

輸出

docker image inspect 499a9ddb3acd
[
   {
      "Id": "sha256:499a9ddb3acdf2117fdb4df826e0782d05d01aa8d1c0574c96e7bed6fbbcf698",
      "RepoTags": [
         "myimage:latest"
      ],
      "RepoDigests": [],
      "Parent": "",
      "Comment": "buildkit.dockerfile.v0",
      "Created": "2023-01-08T07:49:58.294267525Z",
      "Container": "",
      "ContainerConfig": {
         "Hostname": "",
         "Domainname": "",
         "User": "",
         "AttachStdin": false,
         "AttachStdout": false,
         "AttachStderr": false,
         "Tty": false,
         "OpenStdin": false,
         "StdinOnce": false,
         "Env": null,
         "Cmd": null,
         "Image": "",
         "Volumes": null,
         "WorkingDir": "",
         "Entrypoint": null,
         "OnBuild": null,
         "Labels": null
      },
      "DockerVersion": "",
      "Author": "",
      "Config": {
         "Hostname": "",
         "Domainname": "",
         "User": "",
         "AttachStdin": false,
         "AttachStdout": false,
         "AttachStderr": false,
         "Tty": false,
         "OpenStdin": false,
         "StdinOnce": false,
         "Env": [
            "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
         ],
         "Cmd": [
            "/bin/sh"
         ],
         "Image": "",
         "Volumes": null,
         "WorkingDir": "",
         "Entrypoint": null,
         "OnBuild": null,
         "Labels": null
      },
      "Architecture": "amd64",
      "Os": "linux",
      "Size": 9292948,
      "VirtualSize": 9292948,
      "GraphDriver": {
         "Data": {
            "LowerDir": "/var/lib/docker/overlay2/e4c1f1bb76c66c5d1781a775c8a2ca9338065ea0b398aeaed4230a00a15d2952/diff",
            "MergedDir": "/var/lib/docker/overlay2/osfaf1c97lm7awgfbaqibrt6p/merged",
            "UpperDir": "/var/lib/docker/overlay2/osfaf1c97lm7awgfbaqibrt6p/diff",
            "WorkDir": "/var/lib/docker/overlay2/osfaf1c97lm7awgfbaqibrt6p/work"
         },
         "Name": "overlay2"
      },
      "RootFS": {
         "Type": "layers",
         "Layers": [
            "sha256:ded7a220bb058e28ee3254fbba04ca90b679070424424761a53a043b93b612bf",
            "sha256:19bc0373c06b6727c115ef34961486b1a9f3b7c8ccbd3441c4b108aeef2b338d"
         ]
      },
      "Metadata": {
         "LastTagTime": "2023-01-08T07:49:58.412703277Z"
      }
   }
]

第5步 – 輸出將是一個JSON對象,包含關于圖像的詳細信息,包括它的圖層和圖層在終端的大小。

docker image inspect --format='{{json .RootFS.Layers}}' 499a9ddb3acd

在終端的輸出中會產生一個圖像的層和它們的尺寸的列表。

輸出

["sha256:ded7a220bb058e28ee3254fbba04ca90b679070424424761a53a043b93b612bf","sha256:19bc0373c06b6727c115ef34961486b1a9f3b7c8ccbd3441c4b108aeef2b338d"]

結論

在這篇文章中,我們探討了尋找每個Docker鏡像的層和層大小的各種方法。通過使用Dockerfile方法,我們可以通過檢查用于構建鏡像的指令來查看層和大小。Docker歷史命令允許我們查看鏡像的歷史,并看到層和它們的大小。Docker圖像檢查命令也提供了關于圖像的層和大小的詳細信息。

到此這篇關于查找每個Docker鏡像的層和層大小的兩種方法的文章就介紹到這了,更多相關Docker鏡像層大小內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • docker-compose安裝redis過程-主從+哨兵(3臺虛擬機一主兩從)

    docker-compose安裝redis過程-主從+哨兵(3臺虛擬機一主兩從)

    文章介紹了使用Docker部署Redis主從架構及哨兵監(jiān)控的全過程,包括部署架構、配置文件準備、Docker-Compose文件編寫、部署步驟以及測試主從復制和故障轉移功能
    2026-04-04
  • Docker快速搭建Redis集群的方法示例

    Docker快速搭建Redis集群的方法示例

    這篇文章主要介紹了Docker快速搭建Redis集群的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-05-05
  • 教你使用docker安裝elasticsearch和head插件的方法

    教你使用docker安裝elasticsearch和head插件的方法

    這篇文章主要介紹了docker安裝elasticsearch和head插件,安裝時需要下載鏡像和修改系統參數,本文分流程給大家講解的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • docker下elasticsearch安裝證書全過程

    docker下elasticsearch安裝證書全過程

    本文介紹了如何在Docker容器中安裝和配置Elasticsearch 7.6集群,并設置密碼,包括生成證書、拷貝證書、修改配置文件和創(chuàng)建密碼等步驟
    2025-11-11
  • Docker中的COPY指令和ADD指令詳解

    Docker中的COPY指令和ADD指令詳解

    COPY?和?ADD?都是?Dockerfile?中的指令,有著類似的作用。它們允許我們將文件從特定位置復制到?Docker?鏡像中,這篇文章主要介紹了Docker中的COPY指令和ADD指令,需要的朋友可以參考下
    2022-06-06
  • Linux下docker 容器退出bash的兩種實現方法

    Linux下docker 容器退出bash的兩種實現方法

    這篇文章主要介紹了Linux下docker 容器退出bash的兩種實現方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Ubuntu安裝Docker超詳細小白教程(附國內鏡像加速教程)

    Ubuntu安裝Docker超詳細小白教程(附國內鏡像加速教程)

    由于業(yè)務需要,又親自上手在服務器上安裝了Docker,所以這里再給大家總結下,這篇文章主要介紹了Ubuntu安裝Docker的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2026-04-04
  • LINUX中Docker?Swarm的介紹和詳細使用教程

    LINUX中Docker?Swarm的介紹和詳細使用教程

    Docker?Swarm是Docker的集群管理工具,將多個節(jié)點統一管理,支持服務部署、擴縮容與滾動更新,適用于高可用分布式應用,本文給大家介紹LINUX中Docker?Swarm的介紹和詳細使用教程,感興趣的朋友一起看看吧
    2025-09-09
  • Docker 端口映射與容器互聯的實現

    Docker 端口映射與容器互聯的實現

    Docker的端口映射和容器互聯是構建和管理微服務架構時重要的概念,本文主要介紹了Docker 端口映射與容器互聯的實現,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2025-01-01
  • Docker使用root用戶進入容器的幾種方法小結

    Docker使用root用戶進入容器的幾種方法小結

    很多時候,拉取運行的容器,進入時,是非root賬戶,也不知道當前賬戶的用戶密碼,甚至無賬戶,但在使用docker時,有時候需要以root用戶權限進入容器進行操作,所以本文介紹了Docker使用root用戶進入容器的幾種方法,需要的朋友可以參考下
    2025-09-09

最新評論

大方县| 鱼台县| 长葛市| 朝阳区| 淳安县| 泰来县| 长垣县| 蕲春县| 德清县| 肃南| 广宁县| 方城县| 平远县| 陕西省| 巴彦淖尔市| 郓城县| 东乡族自治县| 通道| 安吉县| 汪清县| 五寨县| 磐石市| 翼城县| 玛多县| 衡山县| 柳江县| 淳安县| 海林市| 镇原县| 温宿县| 清原| 五峰| 吉首市| 临汾市| 涡阳县| 于田县| 宣城市| 临澧县| 柳河县| 安岳县| 大丰市|