Используя Artifactory pro самостоятельно, я подтверждаю, что реестр Docker поддерживает столько пространств имен (не только имя пользователя), сколько вам нужно.
Все, что мне нужно сделать, это:
"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: у каждого отдельного реестра должно быть свое собственное доменное имя.