так уж вышло, что виртуалка на 2ТБ оказалась избыточной для моих мощностей и потребностей, так-что теперь задача перетащить всё на новый такой же сервер mailcow в docker, только не заниматься всем с нуля, а просто переместить контейнеры с сервака на сервак.
Пользуемся официальной документацией по перезду, она тут, пишу примерно тоже самое, но на понятном мне языке, по этому поехали.
0. у вас уже есть снапшот виртуалки с текущим состоянием сервера, а также где-то в другом месте лежит полный бэкап этой виртуалки, ведь да? Если так, то можно начинать.
1. делаем новый сервер, как показано тут, включая установку docker, portainer пока ставить не нужно, так-как скрипт миграции грохает все volume при миграции сервера со старого на новый.
для порядка определимся с терминами, старый сервер назовем - старый, а новый - новый
2. заходим на старый по ssh и останавливаем docker
systemctl stop docker.service
systemctl status docker.service
3. устанавливаем сервер синхронизации
sudo apt -y install rsync
sudo apt update
4. заходим на новый сервер и тоже устанавливаем rsync
sudo apt -y install rsync
sudo apt update
также нам надо включить вход на сервер по ssh от root
nano /etc/ssh/sshd_config
в файлик добавляем строку, после завершения переноса сервера лучше эту строчку удалить
PermitRootLogin yes
сохраняем файл с заменой ctrl+x
перезапускаем ssh
sudo systemctl restart ssh
5. заходим на старый сервер и подключаемся к новому по Rsync
вместо bibaboba.com пишем адрес нашего нового сервака (имеем в виду, если на новом сервере были контейнеры, то после этих команд их там уже не будет) подразумевается перенос на девственно пустой docker
rsync -aHhP --numeric-ids --delete /opt/mailcow-dockerized/ root@bibaboba.com:/opt/mailcow-dockerized
rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ smtpadmin@bibaboba.com:/var/lib/docker/volumes
сколько-то ждем, у меня ушло около 25 минут
6. останавливаем старый сервер
cd /opt/mailcow-dockerized
docker compose down
systemctl stop docker.service
повторяем команды из шага 5
rsync -aHhP --numeric-ids --delete /opt/mailcow-dockerized/ root@bibaboba.com:/opt/mailcow-dockerized
rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ smtpadmin@bibaboba.com:/var/lib/docker/volumes
7. идем на новый сервер и запускаем docker
systemctl start docker.service
и подключаем скопированные контейнеры
cd /opt/mailcow-dockerized
docker compose pull
собственно запускаем и проверяем
docker compose up -d
надеюсь вы тоже рады, что всё так просто, идем в админку и сразу направляемся в конфиг DNS проверить статус
и смотрим, что всё настроено верно, о том, как должно быть тут,
после проверяем всё тестовым письмом на https://www.mail-tester.com, должно быть так
горжусь тобой заюш