Встречается на собеседованиях • сегодня

Приходилось ли использовать Multistage Docker builds при работе с Python-приложениями

Да, приходилось. Multistage builds полезны для уменьшения итогового размера образа, особенно в Python, где окружение для сборки (с компиляторами, dev-зависимостями) часто не нужно в production.

Пример:

dockerfile
# Этап сборки
FROM python:3.9-slim as builder

WORKDIR /app
COPY requirements.txt .
RUN pip install --user -r requirements.txt

Этап production

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"]

text

**Преимущества:**  
- Уменьшение размера образа (исключаются ненужные слои).  
- Безопасность (меньше уязвимостей из-за отсутствия dev-зависимостей).  
- Четкое разделение этапов сборки и запуска.  

Для сложных проектов с C-расширениями можно добавить этап с `gcc` для сборки, а затем скопировать только артефакты.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы