Migrate from mattermost/mattermost-prod-app to mattermost/mattermost-team-edition

Hey there. I took over the administration of our local mattermost server.

We have a docker installation with the seemingly deprecated “mattermost/mattermost-prod-app” on version 5.31.7.

What is the procedure to get the current version 7.8 running on our server?
I can’t really find material only for that.

Hope you guys have some input.

Best regards
Janis

Hi @janis.peter ,

I think you would need to start your journey at this point in the documentation:
https://docs.mattermost.com/install/install-docker.html#upgrade-from-mattermost-docker

I’ve never done this upgrade, but it boils down to upgrading the containerized postgresql first and once that’s done, it’s easy to switch to the new docker repository, if you still want to run the server using docker.

Migrating mattermost is not that complicated, you just have to copy over the files and the database content to a new setup and it should work, so if you want to take the chance to also switch to a different deployment method (like the ominbus setup, f.ex.), the time would be good for that.

In order to go into more details: What are your future plans with this deployment?

1 Like

Hi @agriesser,

thanks a lot for the reply.

so the starting point you linked leads to this thread.
I did not find a proper solution there, or did I just overread it?

And then on the current mattermost docker github page this is linked.
So do I just have to run the file that is in that directory in order the upgrade postgres?

Then this would give me mattermost v5.31.7 in the old docker installation but with new postgres db version right?
So after that I should make another mattermost installation on the pc also with version 5.31.7 and then migrate the database between them?
And only then upgrade to the version 5.37.10 first and then finally to version 7.8 right?

Is there any advantage from using omnibus in comparison to the new docker installation?

And regarding your question:
We use mattermost in a small scientific workgroup (~30 people) at the university.
The main purpose is communicating with coworkers directly as well as protocolling / discussing stuff in specific channels.
We might use some of the newer version features as well when the server is up to date?
Why did you ask?

Oh btw, if I go for the mattermost enterprise installation, can we use that with the free teams license as well? Or do I have to go teams version?

Best regards
Janis

In a nutshell, yes. The problem is, that the older docker deployment uses a PostgreSQL version that’s not supported with the newer versions, so you need to make sure to upgrade the PostgreSQL version in the old deployment method first, but I have to admit, that I’ve never done that, since I’m not using any docker deployments myself and when I started to play with them, the “new” method was already available.

There are several ways to reach your goal, not sure which of them is the least cumbersome to be honest, you can also deploy a new installation somewhere else and migrate the files and the database over, which is probably as much hassle as going the other route.

Not sure if you want to start this religious discussion here, talking about the pros and cons of containerized applications :slight_smile:

With regards to the future plans I was interested in the technical future of the deployment, sorry. So if you want to move this application to a new server maybe in the long run (not sure how old the host system is), if you want to consolidate applications internally and move these containers to a different host or if you want to dedicate a separate instance just for running Mattermost. Knowing that could lead to a different suggestion on about how to proceed.
Omnibus f.ex. is being run without containers, but it’s the easiest method when it comes to upgrades in the future, it’s just apt update && apt upgrade and Mattermost will automatically be kept up2date, and it also comes bundled with backup scripts, etc. If you want to stick with the docker deployment, we’d have to start working on the conversion and the first step is to upgrade your postgres container with the scripts you found.

You can use the enterprise binary without a license, no problem with that. It’s basically the same as the teams edition, it just gives you the option to install a license later on (and at some screens, it will tell you about the features of the enterprise edition, etc.).

1 Like

I think we will keep using this host for quite some time. Other services we use like elabFTW, wiki or gitea are also running there. I see no need to seperate those to different machines right now.

I will try updating postgres and then as a second installation I think I will go with the omnibus.
I will post my success or failure updates here :smiley:

Alright, thanks and good luck! Let me know if errors arise and I’ll try to help.

1 Like

Hey,

so I finally found time to report back.

In the meantime, I managed to migrate the installation.
With the script I mentioned I did not have so much luck.
But after carefully reading the complete forum PostgreSQL 9.4 deprecated · Issue #489 · mattermost/mattermost-docker · GitHub
I found a way to upgrade the database to a newer Postgres version.
Then I made a second mattermost installation on my server with docker on version 5.31.7.
started everything and it worked :smiley:
Then upgraded to 5.37.10, started again, and still worked.
Finally upgraded to 7.10-rc2 and started again. still working :smiley:

So everything looks good now.
I only had some issues with people not being able to log in again.
And also resetting their password did not work over the usual reset password functionality.
I had to manually reset their password in the system console, and they could change the password themselves again.

Thank you for your feedback on this topic.

Best regards,
Janis

Awesome, great to hear you’re up and running on the latest version now, although you chose 7.10-rc2 which is not really a stable release, you should have picked 7.10.2 (which is the second patch release of the 7.10 version).

I’m marking this issue as resolved now, if you keep on installing the updates regularly, you should not run into issues like that anymore in the future!