Linux Labs

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

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

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

Шаг 4 из 7 · теория · 4 мин

Тома и down

Стек убирают одной командой. Здесь — что после неё остаётся.

Именованный том сервис подключает по имени, а сам том объявляют на верхнем уровне файла — ключом volumes: рядом с services:. К имени тома compose добавляет имя проекта: том pgdata проекта shop называется shop_pgdata.

yaml
services:
  db:
    image: busybox
    volumes:
      - pgdata:/data     # том проекта
volumes:
  pgdata:

docker compose down останавливает и удаляет контейнеры проекта и его сеть. Тома остаются: данные переживают пересоздание стека. Удалить их вместе со стеком — docker compose down -v.

Проверь себя 1 вопрос

В ~/notes/compose.yaml объявлен том notes-data. Стек убрали командой sudo docker compose down. Что покажет sudo docker volume ls?

  • К имени тома compose добавляет имя проекта — каталога notes: том называется notes_notes-data.

  • notes_default — сеть проекта, её down удаляет. Сети показывает sudo docker network ls, тома — sudo docker volume ls.

  • down удаляет контейнеры и сеть проекта, а тома оставляет. Вместе с томами стек удаляет docker compose down -v.

down удаляет контейнеры и сеть проекта, а тома оставляет: данные переживают пересоздание стека. Имя тома compose составил из имени проекта и имени в файле — notes_notes-data.

Главное в шаге

  • Именованный том объявляют ключом volumes: верхнего уровня, а называется он <проект>_<том>.
  • down удаляет контейнеры и сеть проекта, тома остаются.
  • Тома вместе со стеком удаляет down -v.
Ubuntu 24.04
Загрузка…