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

Где полезна multistage сборка Docker

Multistage сборка в Docker особенно полезна в следующих случаях:

  1. Сокращение размера финального образа – можно использовать один этап для сборки (например, компиляции кода), а другой – для запуска, оставляя только необходимые артефакты.
  2. Улучшение безопасности – исключение инструментов сборки (компиляторов, dev-зависимостей) из финального образа.
  3. Оптимизация кэширования – разделение этапов позволяет пересобирать только измененные части.

Пример для 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"]

Здесь зависимости устанавливаются в builder, а в финальный образ копируются только нужные файлы. Итоговый образ будет меньше и безопаснее.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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