Создание собственного Docker-репозитория.

Создание собственного Docker-репозитория.

Docker Registry — официальное решение от Docker для развертывания собственного репозитория. Позволяет хранить, управлять и раздавать образы контейнеров в частной инфраструктуре.

Установка.
# apt-get update
# apt-get install docker.io
# systemctl enable docker
# systemctl start docker
# apt install apache2-utils

Создаю репозиторий с внешним хранилищем, валидным сертификатом и аутентификацией.

Создаю файл с парой логин/пароль:
# htpasswd -Bbn username password > /etc/docker/authregistry/htpasswd

В каталог /etc/ssl/sysad помещаю сертификат и приватный ключ для домена.

Внешний каталог для хранения образов: /mnt/Registry

Создаю контейнер:
docker run -d -p 5000:5000 --restart=always --name DockerRegistry \
-v /mnt/Registry:/var/lib/registry \
-v /etc/ssl/sysad:/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/certificate_full.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/private.key \
-v /etc/docker/authregistry:/auth \
-e REGISTRY_AUTH=htpasswd \
-e REGISTRY_AUTH_HTPASSWD_REALM="DockerRegistry" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
registry:3

Подключение к репозиторию: docker login registry.sysad.su:5000

Для помещения образа в приватный репозиторий необходимо присвоить тег:
# docker tag 1c:8.3.27.1606 registry.sysad.su:5000/1c:8.3.27.1606.v1

После этого образ можно поместить в репозиторий:
# docker push registry.sysad.su:5000/1c:8.3.27.1606.v1

Для получения образа из репозитория необходимо подключиться к репозиторию:
# docker login registry.sysad.su:5000

И скачать образ:
# docker pull registry.sysad.su:5000/1c:8.3.27.1606.v1

Nicko

Добавить комментарий