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

На каком этапе создания image следует устанавливать зависимости

Устанавливай зависимости на этапе сборки образа (build stage), используя многоступенчатую сборку (multi-stage build) для оптимизации размера финального образа. Сначала создай временный образ с установкой зависимостей, затем копируй только необходимое в финальный образ.

Пример Dockerfile для Python:

dockerfile
# Build stage
FROM python:3.9-slim as builder
WORKDIR /app
COPY requirements.txt .
RUN pip install --user -r requirements.txt

# Final stage
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. Установка зависимостей до копирования основного кода
  2. Использование --user для локальной установки
  3. Копирование только .local из временного образа
  4. Добавление PATH для доступа к установленным пакетам
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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