Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Image digest changes when layer is pushed to different repos. #694

Closed
VascoVisser opened this issue Jul 12, 2015 · 1 comment
Closed

Image digest changes when layer is pushed to different repos. #694

VascoVisser opened this issue Jul 12, 2015 · 1 comment

Comments

@VascoVisser
Copy link

One of my images has a problematic layer that is always pushed when I push the image to different repos on my private registry. Let's call the repos A and B. When I push the image to a new repo A all layers are pushed as expected. Calling push again for A works as expected, nothing is pushed. Then I tag the image for B and push it. The problematic layer is pushed. Now I call push on B again, works as expected; nothing pushed. Now I call push on A; the problematic layer is pushed again! Now calling push on A again, works as expected. So:

push A > initial push
push A > nothing pushed
push B > push problem layer
push B > nothing pushed
push A > push problem layer
push A > nothing pushed
... repeat ad infinitum.

Inspecting the logs of registry I see that the digest of the problem layer is different every time it is pushed! No rebuilds occur, so I take it the digest should be the same?? Maybe this is not a distribution issue but a docker issue? I can't seem to get digest info out of the docker cli, so I can't even verify if the registry and local docker agree on the digest. The digest column in the cli output just shows <none> everywhere.

docker v1.7.0, build 0baf609
distribution v2.0.1

@stevvooe
Copy link
Collaborator

@VascoVisser Thank you for the report.

This is an issue we are well aware of. This is a problem in docker, covered by moby/moby#14018, moby/moby#13945 and moby/moby#14067. The root cause of this issue is that, internally, docker is still very much tied to the v1 image model.

I'm closing this, as having another open issue around this is not constructive.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants