n1ro°
RU

Текст и данные · Инструкция

Как копировать артефакты между стадиями Docker build

Multi-stage build оставляет toolchain и временные build dependencies вне финального runtime image.

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

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

Создайте builder stage через `FROM .. AS builder`, а в final stage используйте `COPY --from=builder /out/app /dest/app`.

Что делать

  1. Соберите artifact в первой stage.
  2. Создайте отдельную runtime stage вторым `FROM`.
  3. Скопируйте только нужный результат через `COPY --from`.
  4. Соберите image и сделайте smoke-test runtime.

Проверка результата

  • Final image содержит runtime artifact, но не builder toolchain и временные build-файлы.
  • Container стартует из final stage и проходит smoke-test со всеми нужными runtime libraries.

Важно

Минимальный final image всё равно должен содержать нужные runtime libraries, certificates и data.

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

Минимальный final image всё равно должен содержать нужные runtime libraries, certificates и data.

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

Фактическая часть сверена по первичным источникам (в т.ч. Multi-stage builds). Пример и формулировки — редакция N1RO на 2026-09-17.