This page provides steps to update Plane to the latest version on your self-hosted instance.

Prerequisites

Create a backup of the Plane instance. See Backup data (Recommended)

Update Plane version

This upgrade guide is for v0.14.0 and above. If your Plane version is v0.13.2 than v0.14.0 then follow the guide here to get to v0.14.0 and then continue with further upgrades.
It is always advised to keep Plane up to date with the latest release.

Lets again run the ./setup.sh command. You will again be prompted with the below options. This time select 5 to upgrade the release.

Select a Action you want to perform:
   1) Install (x86_64)
   2) Start
   3) Stop
   4) Restart
   5) Upgrade
   6) View Logs
   7) Backup Data
   8) Exit

Action [2]: 5

By choosing this, it will stop the services and then will download the latest docker-compose.yaml and variables-upgrade.env. Here system will not replace .env with the new one.

You must expect the below message

Once done, choose 6 to exit from prompt.

“It is very important for you to compare the 2 files variables-upgrade.env and .env. Copy the newly added variable from downloaded file to .env and set the expected values.”

Once done with making changes in .env file, jump on to Start Server

Upgrading from v0.13.2 to v0.14.0

This is a one time activity for users who are upgrading from v0.13.2 to v0.14.0

As there have been significant changes to Self Hosting process, this step mainly covers the data migration from current (v0.13.2) docker volumes to newly created volumes

“Before we begin with migration, make sure your v0.14.0 was started and then stopped. This is required to know the newly created docker volume names.”

Begin with downloading the migration script using below command


curl -fsSL -o migrate.sh https://raw.githubusercontent.com/makeplane/plane/master/deploy/selfhost/migration-0.13-0.14.sh

chmod +x migrate.sh

Now run the ./migrate.sh command and expect the instructions as below

******************************************************************

This script is solely for the migration purpose only.
This is a 1 time migration of volume data from v0.13.2 => v0.14.x

Assumption:
1. Postgres data volume name ends with _pgdata
2. Minio data volume name ends with _uploads
3. Redis data volume name ends with _redisdata

Any changes to this script can break the migration.

Before you proceed, make sure you run the below command
to know the docker volumes

docker volume ls -q | grep -i "_pgdata"
docker volume ls -q | grep -i "_uploads"
docker volume ls -q | grep -i "_redisdata"

*******************************************************

Given below list of REDIS volumes, identify the prefix of source and destination volumes leaving "_redisdata"
---------------------
plane-app_redisdata
v0132_redisdata

Provide the Source Volume Prefix :

Open another terminal window, and run the mentioned 3 command. This may be different for users who have changed the volume names in their previous setup (v0.13.2)

For every command you must see 2 records something like shown in above example of redisdata

To move forward, you would need PREFIX of old setup and new setup. As per above example, v0132 is the prefix of v0.13.2 and plane-app is the prefix of v0.14.0 setup

Back to original terminal window, Provide the Source Volume Prefix and hit ENTER.

Now you will be prompted to Provide Destination Volume Prefix. Provide the value and hit ENTER

Provide the Source Volume Prefix : v0132
Provide the Destination Volume Prefix : plane-app

In case the suffixes are wrong or the mentioned volumes are not found, you will receive the error shown below. The image below displays an error for source volumes.

In case of successful migration, it will be a silent exit without error.

Now it’s time to restart v0.14.0 setup.