Практика: чистый контекст
Скопируйте проект целиком, сохранив API и исключив локальную конфигурацию и кеш.
После урока вы сможете
- Совместить COPY . . с точными исключениями
- Проверить отсутствие лишних файлов
- Сохранить HTTP-контракт после изменения упаковки
Приложение выросло — правило копирования меняется
В первом образе мы копировали единственный app.py. Представьте, что рядом появились модули и шаблоны: перечислять каждый файл в отдельной инструкции неудобно. В этой практике применим COPY . ., а состав переносимых файлов ограничим через .dockerignore.
WORKDIR /app
COPY . .
Две точки означают разные места: источник — корень контекста сборки, назначение — текущая папка образа. Наша цель не сводится к «получить зелёный HTTP». Нужно одновременно сохранить работающий API и не перенести тестовую локальную конфигурацию.
В рабочем проекте узкое копирование тоже бывает правильным решением. Здесь широкое копирование — осознанное условие упражнения: оно позволяет проверить, что вы умеете управлять именно контекстом, а не случайно обошли проблему перечислением одного файла.