Для контейнеризованного реестра Distribution с HTTP-транспортом, учитывающим окружение, передайте маршрут S3 в контейнер реестра:

services:
  registry:
    environment:
      HTTP_PROXY: http://proxy.example.internal:8080
      HTTPS_PROXY: http://proxy.example.internal:8080
      NO_PROXY: localhost,127.0.0.1

Объедините это с существующими image, хранилищем, аутентификацией и volumes. Этот фрагмент не является полным реестром. Имя прокси должно быть доступно из этого контейнера, а схема должна совпадать с прослушивателем прокси.

Подтвердите развёрнутый драйвер S3 и транспорт. Источник, на который ссылается Distribution 2.8.3, использует сеанс AWS SDK; пользовательский драйвер или транспорт может требовать другой поддерживаемой конфигурации.

СоединениеКто настраивает или исследует
Клиент → реестрВходящий HTTP-прослушиватель реестра и маршрут клиента
Демон → источник imageНастройки прокси демона Docker
Реестр → S3HTTP-транспорт хранилища процесса реестра

Успешный вход клиента доказывает только первый маршрут. Драйвер хранилища отправляет собственные запросы к S3; демон, который ранее загружал image реестра, этих вызовов не делает.

Проверьте также перенаправления при загрузке blob. Distribution может перенаправить потребителя в объектное хранилище, что требует от этого клиента прямого доступа к S3. Настройка прокси реестра не настраивает потребителя. Изменение поведения перенаправления меняет путь трафика blob, поэтому назовите сбойного отправителя и операцию до изменения этого параметра.

Похожие статьи