2016-04-08 3 views
0

docker 1.9.1 pull on centos7 не работает при извлечении из частного реестра V2.Ошибка докера не удалась. manifest invalid: manifest invalid - artifactory

$ 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 

Эта же команда отлично работает на osx с докером 1.10.3. Может ли кто-нибудь сказать мне, почему это не работает и как устранять неполадки?

обновление: вот манифест, который он пытается вытащить. Он может вытягивать v1-манифесты, но не работает на v2, как показано ниже.

{ 
    "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" 
     } 
    ] 
} 

ответ

1

Проблема решена после обновления до новой версии Docker. (Docker версия 1.10.3, построить 20f81dd) Стандарт ня репо отстает в версиях, поэтому добавьте Docker репо и получить последнюю версию грузчика:

sudo yum update 

Добавить в нях репозитория:

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 

Установите Докер-двигатель:

sudo yum install docker-engine 

Запустите демон:

sudo service docker start 

Добавить флаг небезопасного-реестр (если реестр собств не имеет сертификата)

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

ExecStart =/USR/бен/Докер демон --insecure-реестр веб-docker.bin-репо .hostname.com -H ФД: //

Reload демон:

sudo systemctl daemon-reload 

Прицепные из частного реестра:

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

    a3ed95caeb02: Pull complete 
0

Для этого вопроса я наблюдал, что всякий раз, когда вы нажимаете тот же артефакт изображения во второй раз с тем же SHA, мы будем наблюдать эту проблему.

Чтобы решить эту проблему, я бы рекомендовал дать разрешение на переопределение/удаление файла манифеста в artifactory.

Это, безусловно, решит эту проблему.

Смежные вопросы