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

Работал ли с многоступенчатыми сборками в Docker

Да, работал. Многоступенчатые сборки (multi-stage builds) в Docker позволяют оптимизировать размер итогового образа, разделяя процесс сборки и финальный образ. Особенно полезно для компилируемых языков (Go, Rust) и Python с зависимостями.

Пример для Python:

dockerfile
# Этап сборки
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"]

text

Ключевые моменты:
1. Первый этап (`builder`) устанавливает зависимости
2. Второй этап копирует только нужные артефакты
3. Итоговый образ не содержит ненужных слоёв (исходный код, кэш pip и т.д.)

Плюсы: уменьшение размера образа, улучшение безопасности (меньше уязвимостей), ускорение деплоя.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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