Sobes.tech
Back to questions
Junior — Middle
76

В чем заключается назначение использования нескольких инструкций FROM при создании Docker-образа?

Answer from AI

sobes.tech AI

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

Основные преимущества:

  • В одном Dockerfile можно использовать разные базовые образы для разных этапов (например, образ с компилятором для сборки и минимальный образ для запуска).
  • На финальном этапе можно копировать только необходимые артефакты из предыдущих этапов, исключая инструменты сборки и временные файлы.

Пример:

FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp

FROM alpine:latest
COPY --from=builder /app/myapp /usr/local/bin/myapp
CMD ["myapp"]