I know
pull complete
is reached after
download complete
in lifecycle but I am interested in knowing the difference between them. I tried searching internet but couldn't found anything clearly explaining the differences.
When pulling a remote docker image, you can see that the layers are downloaded. After a layer is downloaded, docker shows a status of extracting the image which is mainly uncompressing the layer and verifying its checksum. Once this is done the layer is maked with Pull complete
.
So in short, Download complete
means the layer is downloaded whereas Pull complete
implies that the layer was downloaded and extracted onto the host machine.
There may not be any formal documentation about the difference between these messages, but you can always go directly to the source code: https://github.com/moby/moby/blob/master/distribution/xfer/download.go
You can see in the source that it updates the status to "Pull complete" after calling archive.DecompressStream
(during which the "Extracting" status is displayed).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With