Moving a Presearch Node to Another Server
In order to move your Presearch node to a new server, and retain any grandfathered status and node stats, you need to backup the security keys of the node while it’s still running, copy them local, upload them to the new server, run the Presearch Node Restore command, then start the node up on the new server.
For the steps below, old-server
is the old server your node was running on, and new-server
is the new server you are moving the node onto. Text surrounded by {}
should be replaced with the proper actual value.
Follow the Backup Presearch Node Security Keys directions to copy all of your nodes’ backup keys locally to your computer.
If your node is still running on
old-server
, you have to stop it first. Login toold-server
via SSH (using the Terminal on macOS/Linux or PuTTY if you are on Windows), then rundocker stop presearch-node ; docker rm presearch-node ; docker stop presearch-auto-updater ; docker rm presearch-auto-updater
Upload the node security keys to
new-server
from your local computer. Assuming you followed the above-mentioned Presearch Node Backup Directions:cd ~/node-keys/ scp -r -P {new-server-SSH-PORT} presearch-node-keys-{old-server-HOSTNAME} root@${new-server-IP}:
Now login to
new-server
:ssh -p {new-server-SSH-PORT} root@{new-server-IP}
Run
ls
to confirm that you see the folder you uploaded in step 3Let’s now run the Node restore command:
docker run -dt --rm -v presearch-node-storage:/app/node --name presearch-restore presearch/node ; docker cp presearch-node-keys-{old-server-HOSTNAME}/. presearch-restore:/app/node/.keys/ ; docker stop presearch-restore
You’ll see
docker
launch the restore code, which takes about 10 seconds to complete.Once that’s done, you can launch the node just like you would a new node (note: do not change the variables near the end of this command [
${REGCODE}
,${HOST}
,${IP}
] as those arebash
variables here):REGCODE="{PUT YOUR REGISTRATION CODE HERE}" IP="$(dig +short myip.opendns.com @resolver1.opendns.com)" HOST="$(hostname)" ; docker stop presearch-node ; docker rm presearch-node ; docker stop presearch-auto-updater ; docker rm presearch-auto-updater ; docker run -d --name presearch-auto-updater --restart=unless-stopped -v /var/run/docker.sock:/var/run/docker.sock presearch/auto-updater --cleanup --interval 900 presearch-auto-updater presearch-node && docker pull presearch/node && docker run -dt --name presearch-node --restart=unless-stopped -v presearch-node-storage:/app/node -e REGISTRATION_CODE=${REGCODE} -e DESCRIPTION="${HOST} ${IP}" presearch/node && sleep 10 && docker logs presearch-node
You should see the message
info: Node is listening for searches...
if all was started properly.Refresh your dashboard, and you should see that your node is online, with an updated description of the new server’s IP address and hostname.
I recommend removing the uploaded security key files from new-server
and renaming your local copy of the security key files to match the new server’s details.
On new-server
:
rm -rf ~/presearch-node-keys-{old-server-HOSTNAME}
On your local computer:
cd ~/node-keys/
mv presearch-node-keys-{old-server-HOSTNAME} presearch-node-keys-{new-server-HOSTNAME}
Enjoy!