Что означает неподдерживаемый запрос хранилища docker v2 для «артефакта» - PullRequest
2 голосов
/ 10 мая 2019

Версия клиента / сервера моего докера:

$ docker version
Client:
Version:           18.09.0
API version:       1.39
Go version:        go1.10.4
Git commit:        4d60db4
Built:             Wed Nov  7 00:49:01 2018
OS/Arch:           linux/amd64
Experimental:      false

Server: Docker Engine - Community
Engine:
Version:          18.09.0
API version:      1.39 (minimum version 1.12)
Go version:       go1.10.4
Git commit:       4d60db4
Built:            Wed Nov  7 00:16:44 2018
OS/Arch:          linux/amd64
Experimental:     false

Хотел бы использовать артефакт для размещения докеров.При запуске

docker login 

получение:

Неподдерживаемый запрос хранилища docker v2 для «артефакта»

Что означает эта ошибка?

На какую часть V2 относится артефактная жалоба?

Ответы [ 2 ]

1 голос
/ 10 мая 2019

Вероятно, что v2 соответствует API реестра Docker v2 ( ссылка ).

Это API по умолчанию (версия) для текущих клиентов Docker Engine.

Я подозреваю (!), Что ваш Реестр артефактов использует более старую версию API v1 и блокирует попытку вашего клиента-докера использовать с ним v2.

Вы должны иметь возможность настроить Artifactory для использования API-интерфейса реестра Docker.v2.

Я незнаком с Artifactory и не могу дать никаких советов о том, как сделать это изменение, но я уверен, что это ваша проблема.

0 голосов
/ 25 июня 2019

Убедитесь, что в вашем обратном прокси есть следующая перезапись.

Nginx

  rewrite ^/(v1|v2)/(.*) /api/docker/$repo/$1/$2;

Apache

    RewriteCond "%{REQUEST_URI}" "^/(v1|v2)/"

Это требование в настоящее время отсутствует в документации jfrog , однако оно задокументировано, если вы перейдете вНастройки HTTP и пусть artifactory создаст для вас конфигурацию прокси.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...