НАЗНАЧЕНИЕ
Перенос Bookstack, развернутый в docker, из одного сервера на другой при миграции.
ПРИМЕНЕНИЕ
Когда происходит замена сервера, нужен рабочий бэкап сервисов на другом сервере, миграция из одного на другой. При этом нужно сохранить все настройки, как есть, а не разворачивать с нуля.
УСЛОВИЕ
- Права админа на Linux-серверах;
- Права на docker;
- Наличие стабильной сети;
- Нахождение серверов в локальной сети (или в общей VPN-сети).
ШАГИ
На сервере-отправителе:
- Перейти в каталог, где находится файл docker-compose.yml конкретно Bookstack, а затем остановить работу docker:
cd ~/bookstack
docker stop bookstack bookstack_db
- Создать бэкапы самого bookstack и его базы данных:
sudo tar -czf bookstack-backup.tar.gz -C /var/lib/docker/volumes/bookstack_bookstack_data/_data .
sudo tar -czf bookstack-db-backup.tar.gz -C /var/lib/docker/volumes/bookstack_bookstack_db_data/_data .
при необходимости можно заново запустить bookstack:
docker start bookstack bookstack_db
- Скопировать на целевой сервер четыре файла (два бэкапа, docker-compose.yml и Dockerfile):
scp bookstack-backup.tar.gz bookstack-db-backup.tar.gz docker-compose.yml Dockerfile ваш_логин@IP_сервера:/home/ваш_логин/bookstack/
перед этим рекомендуется на целевом сервере создать папку bookstack графически или же командой:
mkdir -p ~/bookstack
На сервере-получателе:
- Перейти на созданную папку в терминале и создать docker-контейнеры, а после создания сразу остановить:
cd ~/bookstack
docker compose up -d bookstack_db
docker compose up -d bookstack
docker compose stop bookstack_db
docker compose stop bookstack
- Распаковать бэкапы в нужные каталоги:
sudo tar -xzf bookstack-db-backup.tar.gz -C /var/lib/docker/volumes/bookstack_bookstack_db_data/_data
sudo tar -xzf bookstack-backup.tar.gz -C /var/lib/docker/volumes/bookstack_bookstack_data/_data
- Перестроить docker-контейнер после распаковки:
docker compose up -d --build
-
Отредактировать файл docker-compose.yml с помощью редактора nano, поменяв ip-адрес (если там стоит localhost, то пропускаем).
-
Поднять docker-контейнер:
docker compose up -d
РЕЗУЛЬТАТ
Сервис Bookstack перенесен со всеми настройками, статьями, инструкциями и информацией без изменений на другой сервер. Если больше нет необходимости, на старом сервере можно остановить работу docker.
ТИПОВЫЕ ОШИБКИ
❌ Проблема: происходят сбои при поднятии docker на новом сервере.
✅ Решение: надо установить docker. По нему будет отдельная инструкция, зависит от дистрибутива.
❌ Проблема: не получается войти в Bookstack.
✅ Решение: проверить наличие сети; проверить ip-адрес в docker-compose.yml; проверить доступность порта (иначе открыть либо фаерволом, либо на уровне роутера).



