Как установить имя пользователя и пароль для собственного личного реестра Docker?
Существует несколько способов реализовать базовую аутентификацию в DTR.Самый простой способ - установить DTR позади веб-прокси и использовать базовый механизм аутентификации, предоставляемый веб-прокси.
Чтобы включить базовую аутентификацию непосредственно в DTR?Вот как.
- Создайте файл пароля, содержащий имя пользователя и пароль:
mkdir auth && docker run --entrypoint htpasswd registry:2 -Bbn your-username your-password > auth/htpasswd
. - Stop DTR:
docker container stop registry
. - Запустите DTR снова с базовымаутентификация, см. команды ниже.
Примечание. Сначала необходимо настроить TLS для работы аутентификации.
docker run -d \
-p 5000:5000 \
--restart=always \
--name registry \
-v `pwd`/auth:/auth \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
-v `pwd`/certs:/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
registry:2
Как использовать их, когда мы хотимиспользовать изображение из этого хранилища?
Прежде чем извлекать изображения, вам необходимо сначала войти в DTR:
docker login your-domain.com:5000
и ввести имя пользователя и пароль с первого шага.