Делал ли multi-stage Docker файлы
Python
Junior
Без компании
Делал ли multi-stage Docker файлы
Ответы
Multi-stage Docker файлы позволяют оптимизировать размер итогового образа, разделяя процесс сборки на этапы. В первом этапе (stage) собираются артефакты, а во втором копируются только необходимые файлы.
**Пример:**
```
# Этап сборки
FROM python:3.9-slim as builder
WORKDIR /app
COPY requirements.txt .
RUN pip install --user -r requirements.txt
# Финальный этап
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"]
```
**Преимущества:**
- Уменьшает размер образа (не включаются промежуточные зависимости).
- Улучшает безопасность (не остаются временные файлы).
- Ускоряет деплой за счет меньшего размера.
Используется, когда нужно минимизировать образ, например, для продакшена.