Docker build cache: изменение кода и requirements.txt
Две сборки стартуют из одного состояния, но меняют разные файлы. Определите, в каком случае Docker сможет повторно использовать слой установки зависимостей.
Выберите ответ и проверьте себя. Продолжить тему можно в курсе Docker и Docker Compose: контейнеризация приложений.
Сборки А и Б начинаются независимо от одной исходной версии проекта. Её кэш доступен, базовый образ и параметры сборки не менялись. Dockerfile содержит одну линейную стадию:
FROM python:3.12.10-slim-bookworm
WORKDIR /app
COPY requirements.txt .
RUN python -m pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["python", "-u", "app.py", "serve"]
В сборке А только в app.py добавлен комментарий. В сборке Б только в requirements.txt добавлен комментарий; имена и версии пакетов прежние. Оба файла входят в контекст, .dockerignore не менялся. Что произойдёт с указанной инструкцией RUN в каждой сборке?
Без регистрации · результат не сохраняется
Связанные задачи
- Docker Compose run или exec для инициализации
- Docker ExitCode 137: достаточно ли этого для вывода об OOM
- Docker Up: почему работающий контейнер ещё не готовый сервис
- Откат Docker-образа: сохранятся ли записи в базе
- SIGTERM и SIGKILL: корректная остановка контейнера
- Docker unhealthy при restart always: будет ли перезапуск
