1. 程式人生 > 其它 >docker基礎_docker映象與分層

docker基礎_docker映象與分層

docker映象與分層

docker映象由一些鬆耦合的制度映象層組成

docker負責堆疊這些映象層並將它們表示為單個統一的物件

當 docker image pull ubuntu:latest 時 每一行 pull complete就代表拉取完成了一層

檢視映象分層的方式 docker image inspect

beginner@beginner-virtual-machine:~$ docker pull tomcat
Using default tag: latest
latest: Pulling from library/tomcat
0e29546d541c: Pull complete 
9b829c73b52b: Pull complete 
cb5b7ae36172: Pull complete 
6494e4811622: Pull complete 
668f6fcc5fa5: Pull complete 
dc120c3e0290: Pull complete 
8f7c0eebb7b1: Pull complete 
77b694f83996: Pull complete 
0f611256ec3a: Pull complete 
4f25def12f23: Pull complete 
Digest: sha256:9dee185c3b161cdfede1f5e35e8b56ebc9de88ed3a79526939701f3537a52324
Status: Downloaded newer image for tomcat:latest
docker.io/library/tomcat:latest
可以發現拉取的時候tomcat一共有十層

docker 將所有映象層堆疊合並,對外提供統一的檢視

共享映象層

docker pull tomcat

  • 假設一共有十層 ,當發現本地存在dc120c3e0290這個映象層時 就不會再次拉取 而是直接使用本地的映象層

  • 當不再需要某個映象的時候,可以通過 docker image rm 命令從 Docker 主機刪除該映象。其中,rm 是 remove 的縮寫。刪除操作會在當前主機上刪除該映象以及相關的映象層。這意味著無法通過 docker image ls 命令看到刪除後的映象,並且對應的包含映象層資料的目錄會被刪除。但是,如果某個映象層被多個映象共享,那只有當全部依賴該映象層的映象都被刪除後,該映象層才會被刪除。

容器生成映象

當通過commit命令 使用當前容器生成映象時,新的映象就會多出一層 是可寫容器生成的層數