Sobes.tech
Назад к вопросам
Junior — Middle
58

Можно ли применить несколько инструкций FROM внутри одного Dockerfile?

Ответ от нейросети

sobes.tech AI

Да, в одном Dockerfile можно использовать несколько инструкций FROM. Это называется многоступенчатая сборка (multi-stage build). Каждая инструкция FROM начинает новый этап сборки, что позволяет разделять процесс создания образа на несколько этапов. Например, можно сначала собрать приложение в одном образе, а затем скопировать только необходимые артефакты в финальный образ, уменьшая его размер.

Пример:

FROM python:3.9-slim as builder
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .

FROM python:3.9-alpine
WORKDIR /app
COPY --from=builder /app /app
CMD ["python", "app.py"]

Здесь первый этап собирает зависимости, а второй — создает легковесный финальный образ.