docker pull failed. manifest invalid: manifest invalid – artifactory

docker 1.9.1 pull on centos7 is failing when pulling from private V2 registry.

$ docker -v
Docker version 1.9.1, build 78ee77d/1.9.1

$ docker pull web-docker.bin-repo.hostname.com/web-dev:latest
Trying to pull repository web-docker.bin-repo.hostname.com/web-dev ... 

failed
manifest invalid: manifest invalid

The same command works fine on osx with docker 1.10.3. Can anyone tell me why this isn’t working and how to troubleshoot further?

  • Docker.io init.d script not working on start container
  • SSL: how to get access to HTTPS in docker container
  • Deploy mongodb replicaset servers with Docker on different physical servers
  • Add SSL support to docker container
  • Simple REST web server in docker container
  • Set ENV variable in container is not working, is every under “/usr/local/bin” executed on container run?
  • update: here is the manifest it’s trying to pull. It can pull v1 manifests, but fails on v2 manifests like the one below.

    {
       "schemaVersion": 2,
       "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
       "config": {
          "mediaType": "application/octet-stream",
          "size": 7503,
          "digest": "sha256:58672cb2c8c6d44c1271a5ca38e60a4ab29fb60050bc76995ce662c126509036"
       },
       "layers": [
          {
             "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
             "size": 32,
             "digest": "sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4"
          },
          {
             "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
             "size": 72038766,
             "digest": "sha256:35d9d5d11536c0c6843ecd106dc710b5c54b8198aa28710e73dba2cbe555847f"
          },
          {
             "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
             "size": 19361671,
             "digest": "sha256:f7de7971859186e93100b41fbba5513771737ba65f57c62404130646bd41b96b"
          },
          {
             "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
             "size": 108814795,
             "digest": "sha256:0041a80e34f1271571619554f6833c06e0ef75d39f152f5fe44ba75bf7e25ae2"
          },
          {
             "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
             "size": 157895786,
             "digest": "sha256:ec3cfa9c22f7e6497a0eacf85c86bf8eb5fdec35d096298f9efb43827a393472"
          }
       ]
    }
    

  • Killbill on Google Flexible Environment using Java and Cloud SQL
  • Tutum HAProxy Docker Virtual Host forward to entry point path
  • DOCKER installation ERROR “Internal error: Failed to expand shell folder constant ”userdocs" on Windows
  • how to publish my docker image
  • docker pull using puppet not working
  • How to get Docker Swarmkit token with Ansible to use with swarmkit nodes
  • 2 Solutions collect form web for “docker pull failed. manifest invalid: manifest invalid – artifactory”

    Problem resolved itself after upgrading to a new version of Docker. (Docker version 1.10.3, build 20f81dd) The standard yum repo lags behind in versions, so add the docker repo and get the latest version of docker:

     sudo yum update
    

    Add the yum repo:

     sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
     [dockerrepo]
     name=Docker Repository
     baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
     enabled=1
     gpgcheck=1
     gpgkey=https://yum.dockerproject.org/gpg
     EOF
    

    Install the docker-engine:

     sudo yum install docker-engine
    

    Start the daemon:

     sudo service docker start
    

    Add the insecure-registry flag (if the priv registry does not have a cert)

     sudo vi /usr/lib/systemd/system/docker.service
    

    ExecStart=/usr/bin/docker daemon –insecure-registry web-docker.bin-repo.hostname.com -H fd://

    Reload the daemon:

     sudo systemctl daemon-reload
    

    Pull from the private registry:

      sudo docker pull web-docker.bin-repo.hostname.com/web-dev:latest
      latest: Pulling from web-dev
    
      a3ed95caeb02: Pull complete
    

    For this issue what I observed is that whenever you push the same image artifact for the second time with same SHA, we will observe this issue.

    To Solve this, I would recommend giving permission to override/delete the mainifest file in artifactory.

    This will definitely solve this issue.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.