n1ro°
RU

Документы · Инструкция

Как дать Docker build доступ к host network

Host network у Docker Build — привилегированное исключение. Оно нужно лишь когда `RUN` обязан обращаться к сервису через

Редакция N1RO · Проверено

Короткий ответ

Для host network на build-step используйте `RUN --network=host ..` и разрешение `--allow network.host` при buildx. Builder/BuildKit также должен разрешать entitlement `network.host`.

Что делать

  1. 1: Подтвердите, что dependency действительно доступна только через host network.
  2. 2: Для одного шага Dockerfile используйте `RUN --network=host <command>`.
  3. 3: Запускайте сборку с `docker buildx build --allow network.host ..`.
  4. 4: Если entitlement запрещён, настройте builder/BuildKit на разрешение `network.host`.
  5. 5: Проверьте, что финальный image не содержит host-specific credentials или адресов.

Важно

Host network снижает изоляцию и воспроизводимость; не используйте его как постоянный обход архитектуры.

Что учитывать

Host network снижает изоляцию и воспроизводимость; не используйте его как постоянный обход архитектуры.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. Dockerfile reference — RUN --network). Пример и формулировки — редакция N1RO на 2026-09-18.