Как зарезервировать Docker-контейнер Valkey (2026)

Безопасное резервирование Valkey сводится к одному правилу: дампить, а не копировать. `valkey-cli SAVE # then capture the resulting dump.rdb` даёт согласованный, восстановимый дамп из работающего контейнера, который restic затем шифрует во внешнее хранилище. SAVE/BGSAVE форкает point-in-time RDB-снимок на диск: вы резервируете готовый dump.rdb (плюс AOF, если включён), а не летучее состояние в памяти. Всё, что копирует /data вживую, рискует невосстановимой копией.

Обнаружение

Что находит Dockstash

Найденные переменные окруженияVALKEY_PASSWORD, VALKEY_ARGS, REDIS_PASSWORD
Порт по умолчанию6379
Живые пути данных (никогда не копируются вживую)/data, /data/dump.rdb, /data/appendonly.aof
Примеры образовvalkey/valkey:8, valkey/valkey:7, valkey/valkey
Шаг за шагом

Резервируем Valkey с Dockstash, шаг за шагом

  1. Создайте аккаунт Dockstash и откройте панель

    Зарегистрируйтесь бесплатно на app.dockstash.com/register. Одноразовый мастер настройки спросит ваш VPS для хранения (машину, где будут лежать зашифрованные резервные копии) и сгенерирует пароль шифрования — сразу сохраните его в менеджере паролей: он показывается ровно один раз.

  2. Добавьте Docker-проект, в котором работает Valkey

    На экране Projects Dockstash автоматически находит каждую папку Compose-проекта на сервере (по умолчанию под /var/www). Выберите проект с вашим сервисом Valkey. Пока ничего не резервируется — вы лишь указываете Dockstash, где живёт проект.

  3. Проверьте, что Valkey распознан

    Откройте проект и вкладку Plan. Dockstash читает docker-compose.yml, распознаёт образ valkey/valkey и добавляет слой со стратегией «сохранить и захватить» — плюс имя контейнера и найденные переменные (VALKEY_PASSWORD, VALKEY_ARGS и старая REDIS_PASSWORD). Файлы, базы и конфиги прокси можно переключать перед сохранением.

  4. Опционально: проверьте снимок вручную

    Если хотите доказательство до автоматизации, запустите то же сохранение: valkey-cli BGSAVE в контейнере. Valkey отвечает «Background saving started», форкается и пишет point-in-time dump.rdb в /data — та же RDB-персистентность, унаследованная от Redis. Этот готовый файл и резервируется, а не живое состояние в памяти.

    docker exec <valkey-container> valkey-cli BGSAVE
  5. Подтвердите место хранения

    Резервные копии хранятся как зашифрованные снимки restic на вашем собственном VPS для хранения, по SSH. Если вы прошли мастер настройки, всё уже настроено; хост, пользователя, порт или SSH-ключ можно изменить в любой момент в Settings → Storage.

  6. Настройте расписание резервного копирования

    Во вкладке Schedule выберите ежедневно, еженедельно или собственный cron (валидируется при вводе). Для Valkey как основного хранилища (очереди, сессии) ежедневно — разумный минимум, ежечасно — обычная практика. Добавьте еженедельный prune с политикой хранения.

  7. Запустите первую копию сейчас

    Нажмите Backup Now. Dockstash запустит фоновое сохранение, дождётся готового dump.rdb и зарезервирует его — вместе с appendonly.aof при включённой AOF-персистентности — прямо в restic. Живой вывод смотрите в панели логов.

  8. Убедитесь, что снимок существует

    По завершении запуска карточка проекта показывает новое время последней копии, число снимков и размер репозитория. Откройте экран Snapshots: точка восстановления появится на таймлайне — это ваше доказательство, что копия дошла до внешнего хранилища.

Команды

Команда дампа

valkey-cli SAVE # then capture the resulting dump.rdb

Команда восстановления

place dump.rdb in the data dir and start valkey-server

SAVE/BGSAVE форкает point-in-time RDB-снимок на диск: вы резервируете готовый dump.rdb (плюс AOF, если включён), а не летучее состояние в памяти.

Восстановить и проверить

Восстановите копию Valkey и докажите, что она работает

Резервная копия Valkey становится настоящей только после восстановления. Восстановления Dockstash по умолчанию не перезаписывают живой инстанс — сначала в новое место, проверка, затем осознанное продвижение.

  1. Выберите точку восстановления

    Откройте Snapshots, выберите проект и просмотрите таймлайн. Каждая строка содержит полный point-in-time dump.rdb (плюс AOF, если включён) и файлы проекта того же запуска.

  2. Восстановите в новое место

    Нажмите Restore и оставьте режим по умолчанию «Restore to new location». Введите имя проекта для подтверждения — осознанное действие с набором текста. Дамп и файлы попадут в выбранный целевой путь, не трогая живой проект.

  3. Проверьте восстановленные данные

    Положите восстановленный dump.rdb в каталог данных тестового контейнера Valkey и запустите — Valkey грузит RDB при старте. Выполните valkey-cli PING: должен прийти PONG; затем проверьте ключи приложения через DBSIZE и несколько GET.

    docker exec <valkey-container> valkey-cli PING
  4. Продвигайте, когда всё проверено

    Когда восстановленные данные проверены, переключите на них приложение (или повторите восстановление в режиме «Overwrite existing» — явный опт-ин). Ещё лучше: пусть еженедельная тренировка восстановления делает это доказательство автоматически, чтобы восстановление никогда не было вашей первой репетицией.

Подводные камни

Каких ловушек избегать

  • Как и с Redis: никогда не берите dump.rdb посреди перезаписи — сначала SAVE/BGSAVE, затем резервируйте готовый файл.
  • valkey-cli — клиентский бинарник; на некоторых совместимых образах redis-cli является символической ссылкой — Dockstash определяет присутствующий.
  • Включайте и захватывайте AOF, когда нужны свежайшие записи; RDB в одиночку может отставать.
Устранение неполадок

Типичные проблемы резервирования Valkey

Симптом
Восстановленный dump.rdb не загружается: ошибка усечённого файла или короткого чтения.
Причина
RDB скопировали, пока Valkey его переписывал — тот же риск середины перезаписи, что и у Redis: модель RDB-персистентности идентична.
Решение
Всегда запускайте SAVE или BGSAVE и дожидайтесь конца перед захватом dump.rdb. Dockstash делает именно так.
Симптом
Ручной тест с redis-cli работает, а valkey-cli отвечает «not found» (или наоборот).
Причина
Клиентский бинарник зависит от образа: официальные valkey/valkey дают valkey-cli, некоторые совместимые образы линкуют redis-cli.
Решение
Используйте бинарник, который есть в образе — протокол и команды одинаковы. Dockstash сам определяет присутствующий клиент; копирование работает в обоих случаях.
Симптом
Вы положили восстановленный dump.rdb в /data, но работающий Valkey всё ещё отдаёт старые данные.
Причина
Как и Redis, Valkey читает RDB только при старте — горячей подмены нет. А при включённом appendonly AOF имеет приоритет при старте, RDB игнорируется.
Решение
Остановите контейнер, положите восстановленный dump.rdb (и AOF при необходимости) в каталог данных, запустите снова. При восстановлении только RDB в AOF-конфигурацию — временно appendonly no на первый старт.
Симптом
Восстановление успешно, но свежайшие записи отсутствуют.
Причина
Включена AOF-персистентность, и appendonly.aof содержал записи новее RDB-снимка.
Решение
Резервируйте оба файла. Dockstash захватывает /data/dump.rdb и appendonly.aof вместе.

Сделайте это в один клик с Dockstash

Dockstash выполняет ровно тот дамп, что выше, передаёт его restic вовне и автоматически проверяет восстановление тренировкой — без скриптов на поддержке.

Последнее обновление: July 2026

Часто задаваемые вопросы

Чем резервирование Valkey отличается от Redis?

Ничем существенным. Valkey — форк Redis с той же моделью персистентности RDB и AOF. Единственное практическое отличие — имя клиентского бинарника (valkey-cli), которое Dockstash определяет сам.

Можно ли восстановить RDB от Redis в Valkey?

Для текущих версий — да: формат RDB общий с точки форка. По мере расхождения проектов держите восстановления в одном движке.

Dockstash распознаёт Valkey автоматически?

Да. Распознаются образы valkey/valkey и бинарник valkey-cli, подхватываются и VALKEY_PASSWORD, и старая REDIS_PASSWORD.

Стоит ли захватывать и AOF?

Если appendonly включён и последние секунды записей терять нельзя — да. Dockstash резервирует и RDB, и файлы AOF.

Как часто резервировать Valkey?

Подстройте расписание под содержимое. Очереди и сессии — обычно ежечасно; медленные данные — ежедневно. На Free копии вручную (Backup Now); Pro — до ежечасных, Business — любой cron.

Где на самом деле живут резервные копии?

На вашем собственном VPS для хранения, как зашифрованные снимки restic, отправляемые по SSH. Dockstash никогда не держит ваши данные в чужом облаке — вы указываете машину под вашим контролем, а репозиторий зашифрован паролем, который есть только у вас.

Как узнать, что копия Valkey действительно восстанавливается?

Запланируйте тренировку восстановления. Dockstash восстановит последний снимок в изолированную область, сверит файлы по байтам и проверит дамп — затем поставит значок «прошло/провалено».