# Server migration

**URL:** <https://discourse.nodered.org/t/server-migration/84021>\
**Category:** General\
**Created:** [25 December 2023 13:08 UTC](https://discourse.nodered.org/t/server-migration/84021 "2023-12-25T13:08:32Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![dcaccount](https://avatars.discourse-cdn.com/v4/letter/d/e36b37/32.png) [@dcaccount](https://discourse.nodered.org/u/dcaccount)\
**Post date:** [25 December 2023 13:08 UTC](https://discourse.nodered.org/t/server-migration/84021/1 "2023-12-25T13:08:32Z")

</div>

Hello,  
and Happy Holidays to everybody.

I need to migrate my Node Red server from one Raspberry (Raspbian Buster) to another (Bookworm).

Is there a way to migrate it with no issue?

Can anybody please advise the procedure to do it?

Thanks!

Daniele

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [25 December 2023 14:29 UTC](https://discourse.nodered.org/t/server-migration/84021/2 "2023-12-25T14:29:50Z")

</div>

> [@dcaccount](#):
>
> Is there a way to migrate it with no issue

The lack of issues can never be guaranteed, but if you backup everything in your .node-red folder (or whichever folder is the one with the flows and settings.js etc) _except_ for the node\_modules folder. Then, to install in the new system, restore all of that to the new .node-red folder, cd into that folder and run  
`npm install`  
which will install the extra nodes you need, and will take a little while on a low power pi or similar. Then start (or restart) node-red.

---

<div class="post-metadata">

**Author:** ![jmorris644](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/jmorris644/32/31964_2.png) [@jmorris644](https://discourse.nodered.org/u/jmorris644)\
**Post date:** [25 December 2023 16:03 UTC](https://discourse.nodered.org/t/server-migration/84021/3 "2023-12-25T16:03:32Z")

</div>

Another option, and one that I use is to do it manually.

I export all of the flows to a file.  
I then take a pic of the installed nodes in the pallet.

After setting up the new node-red server, I then install of the nodes I see in the pallet pics and then import the flows.

IMHO, this also gives me a very clean setup as I am not importing anything that is not currently being used.

---

<div class="post-metadata">

**Author:** ![tree-frog](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/tree-frog/32/89303_2.png) [@tree-frog](https://discourse.nodered.org/u/tree-frog)\
**Post date:** [25 December 2023 17:18 UTC](https://discourse.nodered.org/t/server-migration/84021/4 "2023-12-25T17:18:20Z")

</div>

[Node-RED-Alternate-Installer]

> **[GitHub - TotallyInformation/alternate-node-red-installer: An alternative...](https://github.com/TotallyInformation/alternate-node-red-installer)**
>
> An alternative installer for Node-RED. Avoids global installs, no admin rights required. - GitHub - TotallyInformation/alternate-node-red-installer: An alternative installer for Node-RED. Avoids gl...

Node-RED install scripts

You can install Node-RED on your server then have the ability to copy the whole instance to any internet facing or non-internet facing machine. Then from your server (internet facing), you can update/add nodes for that version of Node-RED inside the editor. Then copy to the non-internet facing instance (folder/subfolders) to your working instance.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [26 December 2023 09:44 UTC](https://discourse.nodered.org/t/server-migration/84021/5 "2023-12-26T09:44:31Z")

</div>

If you are just copying the whole set of files across, make sure you are copying to the same OS and version, hardware, and nodejs version. Otherwise you will probably have problems with any nodes or modules that include compiled code.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [27 December 2023 13:23 UTC](https://discourse.nodered.org/t/server-migration/84021/6 "2023-12-27T13:23:36Z")

</div>

> [@tree-frog](#):
>
> [Node-RED-Alternate-Installer]

For this, as Colin says, on the new device, make sure you run `npm rebuild` on both the outer folder (where Node-RED is installed) and the inner folder (which is your useDir and where most nodes are installed). If using UIBUILDER, also do a rebuild in the uibRoot folder.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [25 February 2024 13:23 UTC](https://discourse.nodered.org/t/server-migration/84021/7 "2024-02-25T13:23:57Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
