Hi,
I have currently an issue with a 3PP company that hosts Docker registries.
Until the latest version of the 3PP (for many years), the following response has been given when re-pushing an identical Docker image (example):
$ docker push <url>/<path>/<image name>:1.133.0-80
5f70bf18a086: Preparing
0134d5635165: Preparing
ec8a1cb3a1d6: Preparing
5f70bf18a086: Layer already exists
0134d5635165: Layer already exists
ec8a1cb3a1d6: Layer already exists
1.133.0-80: digest: sha256:<shasum>
Now after the latest release, the following response is instead received:
$ docker push <url>/<path>/<image name>:1.133.0-80
5f70bf18a086: Preparing
0134d5635165: Preparing
ec8a1cb3a1d6: Preparing
5f70bf18a086: Layer already exists
0134d5635165: Layer already exists
ec8a1cb3a1d6: Layer already exists
**unauthorized: The client does not have permission for manifest: No permission to overwrite manifest '<url>/<path>/<image name>/1.134.0-21/manifest.json'**
The permission for the Docker registry/repository has no delete/overwrite permissions.
What is the correct behavior according to the Docker specification?
Is there any link that can give proof for the correct behavior?