DataLife Engine / Настройка частного реестра Docker Private Registry

Настройка частного реестра Docker Private Registry


Docker Registry — это приложение, которое управляет хранением и доставкой образов контейнеров Docker. Реестры централизуют образы контейнеров и помогают разработчикам сократить время сборки. Например, вместо отдельной установки зависимостей и пакетов для использования Docker, разработчики могут загрузить из реестра сжатый образ, содержащий все необходимые компоненты.

Рекомендуем для ознакомления:

Создадим директорию для хранения образов:
mkdir -p /data/registry

Загружаем образ реестра Docker из собственного реестра Docker:
docker pull registry

Запускаем образ реестра Docker:
docker run --rm -d --name registry -v /data/registry:/var/lib/registry -p 5000:5000 registry:latest

Перенаправляем трафик на NGINX:
location /v2/ {
      if ($http_user_agent ~ "^(docker\/1\.(3|4|5(?!\.[0-9]-dev))|Go ).*$" ) {
        return 404;
      }

      proxy_pass                          http://127.0.0.1:5000;
      proxy_set_header  Host              $http_host;
      proxy_set_header  X-Real-IP         $remote_addr;
      proxy_set_header  X-Forwarded-For   $proxy_add_x_forwarded_for;
      proxy_set_header  X-Forwarded-Proto $scheme;
      proxy_read_timeout                  900;
}

Увеличиваем размер выгрузки файлов для NGINX:
http {
        client_max_body_size 2000M;
        ...
}

Проверяем изменения nginx.conf на наличие ошибок и перечитываем конфиг:
nginx -t
nginx -s reload

Открываем в окне браузера следующий url:
https://newsite.com/v2

Вы увидите пустой объект JSON или:
{}

Чтобы загрузить свой образ в репозиторий, поставьте метку образу:
docker tag test-image newsite.com/test-image

Отправьте образ с меткой в реестр:
docker push newsite.com/test-image

Для просмотра списка репозиторий, введите следующий url:
https://newsite.com/v2/_catalog

 Разворачиваем registry с помощью docker-compose
8-07-2021, 14:08
Вернуться назад