За регистър 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 слушател на регистъра и маршрутът на клиента
Daemon → източник на imageПрокси настройки на Docker daemon
Регистър → S3HTTP транспортът на хранилището в процеса на регистъра

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

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

Подобни статии