MongoDB restoration after Rocket.Chat upgrade


BLUF: I am looking for the most efficient method of updating Rocket.Chat, without losing any data.

Currently, I am running a manually deployed Rocket.Chat ver 3.18.2, but I want to upgrade to a newer version. I understand that Docker is the preferred method of upgrading between releases, however, I don’t want to lose any data if I migrate to a Docker deployment. Can I take a mongodb archive and restore it into an upgraded, containerized database without losing data?

Alternatively, if I were to stand up a new, upgraded, manually deployed Rocket.Chat instnce, can I restore my data to that instance without losing data?

Server Setup Information

  • Version of Rocket.Chat Server: 3.18.2
  • Operating System: RHEL
  • Deployment Method: manual
  • NodeJS Version: 12.22.1
  • MongoDB Version: 4.2.17
  • Proxy: nginx

So your real question here is not how to move your data to a new instance or, but how do you get your data/database upgraded to the be compatible with any changes made from one version to the next, right?


I would like to better understand your “manual” deployment method, with that I can help better.

But what I recommend is to backup the database and put it in another instance in the latest version, this is the easiest way to test this migration (without help from other people)

I think this is the simplest way to answer your question, if you can’t evolve with this theme, I can validate a form here in my environment.

Thanks for the replies,

I may not be explaining my question adequately. I’m attempting to update my current Rocket.Chat instance (on version 3.18.2) to the current release without losing user data. I understand that the published guidance is not to skip any major release and preferably, not more than two minor releases. Unfortunately, my attempts to follow the official update guidance has ended with my RC service failing every time I try to start it and when I created a Docker container and started it, I just got a blank page with going to my URL… I believe my biggest issue is I don’t know which questions to ask.