Приходилось ли писать multi-stage images в Docker файлах

Python Junior Без компании
Приходилось ли писать multi-stage images в Docker файлах
Ответы
Да, приходилось. Multi-stage сборка в Docker позволяет оптимизировать итоговый образ, уменьшая его размер и улучшая безопасность. В первом этапе (stage) собирается приложение со всеми зависимостями, а во втором - копируются только необходимые артефакты в чистый образ. Пример для Python-приложения: ``` # Stage 1: сборка зависимостей FROM python:3.9-slim as builder WORKDIR /app COPY requirements.txt . RUN pip install --user -r requirements.txt # Stage 2: финальный образ FROM python:3.9-slim WORKDIR /app COPY --from=builder /root/.local /root/.local COPY . . ENV PATH=/root/.local/bin:$PATH CMD ["python", "app.py"] ``` **Преимущества:** - Уменьшение размера образа (не остаются временные файлы, кэш pip и т.д.) - Безопасность (меньше слоёв и уязвимостей) - Чистота (только нужные файлы в финальном образе)