DOCKER · МОДУЛЬ 06 · УРОК 3
Итоговая работа: сервис для команды
35 мин
Соберите все навыки в одном образе: чистый контекст, конфигурация, HTTP, здоровье и ненулевой UID.
Образ для команды~35 минНастоящая лабораторная
После урока вы сможете
- Переводить требования в Dockerfile и код
- Проверять два режима запуска одного образа
- Отличать ошибку сборки от нарушения контракта
Сначала контракт, затем код
Команда принимает небольшой сервис. GET / должен возвращать JSON ровно с двумя полями: message из переменной окружения MESSAGE и status со значением ok. По умолчанию MESSAGE равен Ready for production; при переопределении ответ меняется без пересборки.
{"message": "Ready for production", "status": "ok"}
# Тот же образ с MESSAGE="Runtime wins!":
{"message": "Runtime wins!", "status": "ok"}
Дополнительно процесс работает с UID 65532, HTTP доступен снаружи контейнера, а действующий HEALTHCHECK достигает healthy. Каждое требование имеет своё наблюдение в проверке. Не пытайтесь заменить их одной печатью «ok» в журнал.