Машина, яка досягає зовнішнього реєстру через проксі, може скопіювати образ у внутрішній реєстр за допомогою Skopeo. Налаштуйте процес, що виконує копіювання:

export HTTP_PROXY=http://proxy.example.net:8080
export HTTPS_PROXY=http://proxy.example.net:8080
export NO_PROXY=registry.internal.example

skopeo copy --all \
  docker://registry.public.example/team/image:stable \
  docker://registry.internal.example/team/image:stable

Назви реєстрів і посилання на образ — приклади. Джерело проходить через проксі; внутрішній реєстр зіставляється записом обходу. Для дозволеного копіювання з публічного джерела без налаштованих облікових даних проксі список HTTP-проксі може надати кандидатів HTTP-кінцевих точок, поки цей внутрішній обхід залишається на місці. Узгодьте цей запис з іменем хоста призначення, яке команда фактично використовує.

docker:// — це назва транспорту образів для посилань на реєстри. Це не означає, що копіювання делегується локальному демону Docker. HTTP-транспорт реєстру Skopeo використовує виявлення проксі із середовища, якщо вбудований застосунок явно не надає інший URL проксі.

--all важливий, коли посилання джерела вибирає багатоплатформний індекс образів або список маніфестів: він вимагає скопіювати всі зазначені образи. Без цього вибору копія може вибрати образ для поточної платформи замість відтворення повного багатоплатформного посилання.

Після копіювання машини нижче за потоком можуть використовувати посилання на образ внутрішнього реєстру. Їхня здатність завантажити його залежить від їхнього маршруту до цього реєстру; вони не успадковують середовище процесу, що виконував копіювання.

Схожі статті