Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

docker pull always show "Already exists" for layers during pull even after deleting all images

Tags:

docker

here is my input and output:

shshenhx@shshenhx:~/Desktop/Docker$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
python              latest              336d482502ab        4 days ago          692 MB

shshenhx@shshenhx:~/Desktop/Docker$ docker rmi 336
Untagged: python:latest
Untagged: python@sha256:bf0718e2882cabc144c9c07d758b09c65efc104a6ddc72a9a976f8b26f67c2ee
Deleted: sha256:336d482502ab564b0b2964b2ed037529ba40c7b4ade2117ca11d74edbf11f99e
Deleted: sha256:1e2f72b0bf844de7bfe57a32115b660770355843ef8078fb55629e720147e6a9
Deleted: sha256:b5818ba96f33835318f3e9d7b4094e1007be247f04ab931ea9ef83b45b451f90
Deleted: sha256:0c2d7cafdab1084ebbd0112b3bedf76458ae6809686fb0ad9bae8022f11c3a84

shshenhx@shshenhx:~/Desktop/Docker$ docker pull python
Using default tag: latest
latest: Pulling from library/python
4176fe04cefe: Already exists 
851356ecf618: Already exists 
6115379c7b49: Already exists 
aaf7d781d601: Already exists 
40cf661a3cc4: Already exists 
975fe2fd635f: Pull complete 
bf4db784e7fd: Pull complete 
0491f7e9426b: Pull complete 
Digest: sha256:bf0718e2882cabc144c9c07d758b09c65efc104a6ddc72a9a976f8b26f67c2ee
Status: Downloaded newer image for python:latest

My question is, I have already rm python image, why it still shows already exist for some of layers? How can I totally delete all the python layers. Thanks.

like image 599
Kisen.Chin Avatar asked Feb 22 '18 06:02

Kisen.Chin


People also ask

What happens to the layers when an image is deleted in docker?

Nothing. It simply ran flawless from the exact state it was before having its image deleted.

Does docker pull pull all layers?

By default the Docker daemon will pull three layers of an image at a time. If you are on a low bandwidth connection this may cause timeout issues and you may want to lower this via the --max-concurrent-downloads daemon option.

How do I completely remove docker images?

Remove all images All the Docker images on a system can be listed by adding -a to the docker images command. Once you're sure you want to delete them all, you can add the -q flag to pass the image ID to docker rmi : List: docker images -a.

What happens during docker pull?

The 'docker pull' is a Docker command to download a Docker image or a repository locally on the host from a public or private registry. When we run any container and the specified Docker image is not present locally then it first pulls it from the registry.


1 Answers

From reference of docker images command

Docker images have intermediate layers that increase reusability, decrease disk usage, and speed up docker build by allowing each step to be cached. These intermediate layers are not shown by default.

Maybe those Already exists are intermediate layers. By default, they are hided when you run docker images, please try docker images --all.

like image 173
gzh Avatar answered Sep 19 '22 18:09

gzh