TGViewer
DevOps для ДевоПсов DevOps для ДевоПсов @devo_pes · 3.22K subscribers
Post #7971 328
Как собирать компактные Docker-образы через multi-stage build

В одном Dockerfile можно отделить сборку от запуска: каждый FROM начинает новый этап, а COPY --from=build переносит в финальный образ только артефакт. В примере Docker Go SDK и промежуточные файлы остаются на этапе сборки, а образ на базе scratch содержит только бинарник.

Именуйте этапы через AS build: тогда COPY не сломается после перестановки инструкций. Для отладки собирайте этап командой docker build --target build . BuildKit обработает лишь этапы, от которых зависит выбранная цель.

В руководстве Docker есть варианты с внешним образом и наследованием этапов. Начните с этапов сборки и запуска, затем убедитесь, что финальный образ стартует без SDK и промежуточных файлов.
More from @devo_pes
  1. Sep 20, 2026ACME отработал с кодом 0, а пользователи всё ещё получают старый сертификат Cron обновил с…
  2. Sep 20, 2026Зелёный CI не ловит деградацию под трафиком, зато её ловит канарейка с автооткатом Функцио…
  3. Sep 20, 2026Что проверить перед запуском приложения в Kubernetes Pod может запуститься, а обновление и…
  4. Sep 19, 2026Как выбрать инструменты для анализа производительности Linux При инциденте на Linux-хосте…
  5. Sep 19, 2026OpenTelemetry бесплатен ровно до дня, когда вы начали его эксплуатировать Стандарт снял пр…
  6. Sep 19, 2026Как измерить и сократить toil в эксплуатации Google SRE определяет toil как поток повторяю…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →