У меня был типичный backend-образ Django: 1,5 GB. И это уже не «ну подумаешь», а явный сигнал, что в production уехал мусор вместе с кодом.
Что обычно раздувает образ:
— dev-зависимости, которые не нужны на сервере;
— кэш, временные файлы, сборочные артефакты;
— лишние пакеты ОС;
— исходники и директории, которые не должны жить в финальном слое.
Что я проверяю первым:
1. multi-stage build;
2. разделение dev и prod requirements;
3. чистка pip-cache и apt-cache;
4. `.dockerignore`;
5. порядок слоев в Dockerfile.
На практике минус 500 MB — это не «косметика». Это быстрее сборки, дешевле деплой, меньше риск тащить в образ то, что потом никто не контролирует. 🧹
Если образ весит как мини-сервер, значит, где-то уже потеряли дисциплину. И Docker это быстро показывает.
Яндекс Сигнал
@YandexSignalPro
У меня был типичный backend-образ Django: 1,5 GB. И это уже не «ну подумаешь», а явный сигнал, что в productio
Этот пост опубликован в Telegram-канале Яндекс Сигнал. Подписаться можно по ссылке: @YandexSignalPro.