从DockerHub中提取Docker镜像时,CLI会显示一些进度条,每个进度条都有不同的ID:
➜ docker pull training/sinatra
Using default tag: latest
latest: Pulling from training/sinatra
a3ed95caeb02: Pull complete
6e71c809542e: Downloading [============> ] 17.3 MB/67.48 MB
d196a7609355: Download complete
08f6dff5acea: Download complete
ce65532003d0: Downloading [==============================> ] 19.24 MB/21.22 MB
54bcaa4d1a10: Downloading [=====> ] 25.39 MB/62.67 MB
8572ad96f6e1: Waiting
下载完成后,这些ID似乎都不是下载的图片ID:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
...
training/webapp latest 6fae60ef3446 16 months ago 348.8 MB
training/sinatra latest 49d952a36c58 2 years ago 447 MB
下载过程中显示的ID代表什么?
答案 0 :(得分:1)
被拉的东西是层次。每个图像由多个图层组成,每个图层都有一个ID。该图像还具有ID。如果您执行docker images -a
(对所有人),那么您应该会在列表中看到其他拉出的ID。
答案 1 :(得分:1)
简短回答:拉动图像时看到的ID是"摘要",这是每个图像层的SHA256哈希值。图像ID显示在本地图像列表中也是一个摘要",该摘要实际上表示图像的JSON配置对象的SHA256哈希值。
答案 2 :(得分:1)
这些是层次。图像由其他图像组成。所有图像都代表"主图像"的图层。例如,当您使用Dockerfile创建新图像时,Dockerfile中的每个新行都会创建一个新图层。
有关images and layers的详细信息,请参阅官方文档。