Skip to content

Docker-Content-Digest in GET does not match docker push #1565

@7AC

Description

@7AC

Output of docker version:

Client:
 Version:      1.10.3
 API version:  1.22
 Go version:   go1.6
 Git commit:   20f81dd
 Built:        Sat Mar 12 04:07:44 UTC 2016
 OS/Arch:      darwin/amd64

Server:
 Version:      1.10.1
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   9e83765
 Built:        Thu Feb 11 20:39:58 2016
 OS/Arch:      linux/amd64

Output of docker info:

Containers: 6
 Running: 1
 Paused: 0
 Stopped: 5
Images: 6
Server Version: 1.10.1
Storage Driver: aufs
 Root Dir: /mnt/sda1/var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 50
 Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Plugins: 
 Volume: local
 Network: bridge null host
Kernel Version: 4.1.17-boot2docker
Operating System: Boot2Docker 1.10.1 (TCL 6.4.1); master : b03e158 - Thu Feb 11 22:34:01 UTC 2016
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 996.2 MiB
Name: dev
ID: OFRG:6OKA:ND64:QAPX:UPVB:QIZZ:OVNM:34VN:R33J:SVTU:XIW3:S6QI
Debug mode (server): true
 File Descriptors: 20
 Goroutines: 35
 System Time: 2016-03-25T01:12:13.364344828Z
 EventsListeners: 0
 Init SHA1: 
 Init Path: /usr/local/bin/docker
 Docker Root Dir: /mnt/sda1/var/lib/docker
Username: arastra
Registry: https://index.docker.io/v1/
Labels:
 provider=virtualbox

Additional environment details (AWS, VirtualBox, physical, etc.):
VirtualBox 5.0.16 r105871 on Mac OS 10.11.4

Steps to reproduce the issue:

  1. docker push 127.0.0.1:5000/foo/bar:12345
  2. curl -D - http://127.0.0.1:5000/v2/foo/bar/manifests/12345 | grep Docker-Content-Digest
  3. curl -X DELETE http://127.0.0.1:5000/v2/foo/bar/manifests/<digest from step 2>

Describe the results you received:
{"errors":[{"code":"MANIFEST_UNKNOWN","message":"manifest unknown"}]}

Describe the results you expected:
Deletion of the image

Additional information you deem important (e.g. issue happens only occasionally):
The same sequence works by specifying the digest from the output docker push, which differs from the output of the GET request at step 2. I couldn't find any other digest that resembles the latter through the API.
I was redirected here by moby/moby#21496

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions