Memex на своём сервере
Резервные копии и восстановление
Где memex на своём сервере хранит ежедневные резервные копии, как унести их с этой машины и как восстановить данные из копии.
Раз в день memex сохраняет в /data/backups копию файлов своей базы данных и экспорт заметок в Markdown и хранит семь последних копий. Они лежат на том же томе, что и всё остальное, так что скопируй их с этой машины в другое место:
docker cp memex:/data/backups ./memex-backups
Экспорт в Markdown можно скачать в любой момент в разделе Настройки › Заметки › Экспорт.
Восстановить всё из папки с копией
Вместо YYYYMMDD-HHMMSS подставь нужную копию:
docker stop memex
docker run --rm -v memex:/data -v "$PWD/memex-backups/YYYYMMDD-HHMMSS:/backup:ro" --entrypoint sh ghcr.io/artem-kolesnikov/memex -c 'test -f /backup/directory.sqlite && test -d /backup/vaults && old=/data/before-restore-$(date +%s) && mkdir "$old" && mv /data/directory.sqlite* /data/vaults "$old"/ && cp /backup/directory.sqlite /data/ && cp -r /backup/vaults /data/ && echo restored'
docker start memex
Если в папке нет резервной копии, ничего не изменится. А то, что было раньше, не удаляется, а переносится в /data/before-restore-…. Если том потерян, верни secret.env так же.
Восстановить только заметки из экспорта в Markdown
В новом memex открой Настройки › Заметки › Импорт и загрузи ZIP-архив. Каждая заметка переносится со своими тегами, описанием и датами, а история, подключения и настройки не переносятся. Экспорт с memex.tools импортируется так же — и обратно. Подробнее — Импорт заметок.