Linux Labs

Контейнеры: Docker и compose / Ступень 8 из 11

docker compose: стек одним файлом

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 3 из 7 · на машине · 5 мин

Правка и пересоздание

Причина — в файле. Здесь — как compose применяет правку.

Окружение, порты и образ контейнер получает при создании: поменять их можно только новым контейнером. docker compose up -d делает это сам — сравнивает описание каждого сервиса с его контейнером. Описание изменилось — Recreate: старый контейнер удаляется, вместо него создаётся новый. Не изменилось — Running, контейнер остаётся как есть.

docker compose restart <сервис> перезапускает тот же контейнер, и compose.yaml при этом не читается: окружение остаётся прежним. restart нужен в другом случае — когда изменился файл, смонтированный в контейнер через volumes. Такой файл программа перечитает при запуске, а up -d его содержимое не сравнивает.

Упражнение · сделать

Почини backend

Сделай так, чтобы backend работал, а curl http://localhost:8080/ отвечал его страницей backend: production. Стек — ~/stack/compose.yaml; код приложения в ~/stack/app не трогай.

Войти и начать Машина доступна после входа

Цели · 0 из 2

  • Запустить backend с исправленным окружением ещё не выполнена
  • Довести запросы сайта до backend ещё не выполнена

Цели шага

0 из 2
  • Запустить backend с исправленным окружением — ещё не выполнена
  • Довести запросы сайта до backend — ещё не выполнена
Ubuntu 24.04

Цели шага

0 из 2
  • Запустить backend с исправленным окружением — ещё не выполнена
  • Довести запросы сайта до backend — ещё не выполнена
Загрузка…