Артефакт, сколько хранилищ я могу создать? - PullRequest
0 голосов
/ 07 июня 2018

У меня есть лицензия artifactory pro.

Я хочу использовать артефакт для хранилища докеров.

Как вы знаете, хранилище Docker поддерживает пространство имен пользователя, например,

example.com / username / imagename: tag

, но артефакт использует имя хранилища вместо имени пользователя.

но я хочу использовать пространство имен пользователей и применить разрешение для каждого пользователя для своего хранилища.

Итак, сколько хранилищ поддерживается?

1 Ответ

0 голосов
/ 07 июня 2018

Используя Artifactory pro самостоятельно, я подтверждаю, что реестр Docker поддерживает столько пространств имен (не только имя пользователя), сколько вам нужно.

Все, что мне нужно сделать, это:

  • логин

    docker login my-registry
    
  • тег

    docker tag my_tag my-registry:my_label/my_tag
    
  • push

    docker push my-registry:my_label/my_tag
    

"my-registry" - это имя сервера, на которое ссылается ваш реестр докера артефактов, в соответствии с настройкой " Настройка Artifactory / Настройка обратного прокси-сервера / Настройка NGINX "

Это потому, что Dockerтребуется URL-адрес любого репозитория, к которому он подключен, для соответствия определенному формату (http(s)://<host>:<port>/v1), а для Artifactory требуется определенный формат URL-адреса (http://<host>:<port>/artifactory/api/docker/<docker_repository>).
Следовательно, необходим обратный прокси.

Но: здесь нет имени пользователя, только пространство имен.
Как уже упоминалось в Artifactory Docker Registry :

С детальным контролем доступа, обеспечиваемым встроенной защитойфункции, Artifactory предлагает безопасный Docker push и pull с местным Docker репозитории как полностью функциональные, безопасные, частные реестры Docker.

Но эти встроенные функции безопасности предназначены для аутентификации пользователя в Artifactory в целом, а не только для реестра Docker, которыйне имеет понятия имени пользователя: если у пользователя есть разрешение на передачу в реестр Docker, он отправляет в любую его часть.

Я хочу, чтобы выполнять ACL на основе пространства имен.

Насколько я знаю, это не будет поддерживаться.
Вы можете настроить NGiNX для такой фильтрации, но сама Artifactory не предоставляет ACL на основе пространства имен реестра Docker.


Итак, я хочу создать хранилище для каждого пользователя и предоставить этому хранилищу разрешение на использование артефакта, например концентратора докеров.Поэтому мне интересно, сколько репозиториев я могу создать в артефакте

Это подразумевает две вещи:

  • различные локальные репозитории Docker: нет официального ограничения на количествоиз репо, только ограничения квоты локального хранилища .
  • разные доменные имена обратного прокси NGiNX: у каждого отдельного реестра должно быть свое собственное доменное имя.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...