Данные в томе в Docker
Данные кладут в именованный том на путь /data, иначе запись исчезнет вместе с контейнером.
Сам том держит файлы
отдельно от слоя копии,
но ключ без журнала
может остаться только
в оперативной памяти
и пропасть при остановке.
Журнал append-only
пишет изменения на диск
в каталог /data.
Сервис db на redis:8
монтирует том dbdata
в /data
и включает журнал
флагом --appendonly
со значением yes:
services:
db:
image: redis:8
command: ["--appendonly", "yes"]
volumes:
- dbdata:/data
volumes:
dbdata:
Имя dbdata объявлено
в корне файла в блоке
томов.
После фонового подъёма
запишем ключ
и проверим, что значение
читается из памяти сервера:
docker compose up -d
Строка hello
под ключом msg:
docker compose exec db redis-cli SET msg hello
Ответ клиента подтверждает запись:
docker compose exec db redis-cli GET msg
Подключите том files к /data для сервиса store на redis:8 и включите журнал на диск при старте.
Поднимите проект в фоне, запишите произвольный ключ и отметьте, что имя тома объявлено в корне описания.