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

Где полезна Multi-stage builds в Docker

Multi-stage builds в Docker полезны для уменьшения размера итогового образа, особенно при сборке приложений на компилируемых языках (Go, Rust, C++). Они позволяют разделить процесс сборки и финальный образ, оставляя только необходимые артефакты.

Пример для Python:

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

Ключевые преимущества:

  1. Уменьшение размера образа (используем -slim базовый образ)
  2. Улучшение безопасности (меньше слоёв и зависимостей)
  3. Чистота сборки (промежуточные артефакты не попадают в финальный образ)
  4. Оптимизация кэширования (можно пересобирать только нужные этапы)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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