Вопрос на собеседовании · DevOps-инженер

Как уменьшить размер Docker-образа?

Короткий ответ, ключевые тезисы и ошибки, которых стоит избежать на интервью.

Обновлено 25 сентября 2026 г.важная тема
DevOps-инженерПрофессии и разделы
Короткий ответ

Основные меры — multi-stage build, минимальный runtime-образ, точный .dockerignore и установка только production-зависимостей. Инструменты сборки и исходники остаются в builder-стадии, а в финальную попадают только нужные бинарники и сертификаты.

Размер слоёв уменьшают очисткой кеша в том же RUN, где ставятся пакеты, и удалением ненужных файлов до фиксации слоя. После изменений сравнивают не только мегабайты, но и CVE, время сборки, кеширование и совместимость runtime.

01 · Структура ответа

Что важно сказать интервьюеру

Раскройте тезисы, которые относятся именно к этому вопросу, и поясните их на собственном примере:

Multi-stage отделяет сборку от runtime.
Удаление в следующем слое не уменьшает предыдущий.
.dockerignore сокращает build context.
Distroless полезен не каждому приложению.

02 · Пример

Как объяснить на практике

Go-сервис собирается в golang-образе с кешем модулей, затем статический бинарник и CA-сертификаты копируются в distroless. Компилятор и исходники в production-образ не попадают.

Не заучивайте формулировку дословно. Свяжите принцип с задачей из собственного проекта — интервьюер почти наверняка попросит уточнить детали реализации и компромиссы.

03 · Ошибки

Чего избегать в ответе

Советовать Alpine без проверки libc и нативных библиотек.
Очищать apt cache отдельным RUN.
Гнаться только за размером и игнорировать безопасность.

04 · Углубление

Что могут спросить следом

  1. Как порядок COPY влияет на кеш?
  2. Чем distroless отличается от scratch?
  3. Как найти самый тяжёлый слой?

05 · Проверка фактов

Первоисточники по теме

Ссылки ниже помогают проверить понятия, методы и ограничения по теме. Они не являются доказательством того, что этот вопрос задают на каждом собеседовании.

Практика ответа

Ответьте вслух, а не про себя

Откроем тренировку сразу на этом вопросе. Выберите грейд, сформулируйте ответ и сравните его с подсказкой.

Потренировать ответ