← До списку лабораторних по Docker
Повний опис / сценарій лабораторної:
Мета: навчитися налагоджувати складний Dockerfile за допомогою окремих build стадій. Крок 1. Створити Dockerfile з кількома стадіями. Пояснення: наприклад base, build, test, final. Крок 2. Додати у кожну стадію простий echo з назвою стадії. Пояснення: це допоможе бачити порядок виконання. Крок 3. Виконати стандартну збірку. Команда: docker build -t lab61-app . Пояснення: подивися які кроки реально виконуються. Крок 4. Зібрати тільки середню стадію build. Команда: docker build --target build -t lab61-build . Пояснення: образ міститиме лише артефакти цієї стадії. Крок 5. Запустити контейнер з образу lab61-build. Команда: docker run --rm -it lab61-build sh Пояснення: перевір наявність зібраних бінарників або тимчасових файлів. Крок 6. Увімкнути більш детальне логування збірки. Команда: DOCKER_BUILDKIT=0 docker build --no-cache -t lab61-debug . Пояснення: класичний формат логів інколи читати легше. Крок 7. Додати штучну помилку у одну стадію. Пояснення: наприклад неправильну команду у RUN. Крок 8. Запустити збірку тільки до проблемної стадії. Команда: docker build --target build -t lab61-broken . || true Пояснення: дивися на останні рядки логів щоб зрозуміти причину. Крок 9. Виправити Dockerfile і переконатися що помилка зникла. Пояснення: знову зібрати образ і перевірити лог. Крок 10. Міні звіт. Завдання: опиши стратегію поділу Dockerfile на стадії для максимального спрощення debug.