Skip to content
© 2026 The ThingsBoard Authors
Try for free

ThingsBoard Cloud

Choose your data region

Your data stays in the region you choose, for residency and compliance. No credit card required.

Rather run it yourself? Install on your own servers

Upgrading from Community Edition

ThingsBoard 4.4 requires Java 25, while ThingsBoard CE runs on Java 17. Install OpenJDK 25 and make it the default Java version before upgrading:

Terminal window
sudo apt update && sudo apt install -y openjdk-25-jdk-headless
sudo update-alternatives --set java /usr/lib/jvm/java-25-openjdk-$(dpkg --print-architecture)/bin/java

Verify the installation:

Terminal window
java -version

The reported version must be 25.

Download the ThingsBoard 4.4.0 package:

Terminal window
wget https://github.com/thingsboard/thingsboard/releases/download/v4.4/thingsboard-4.4.deb

Stop ThingsBoard service if it is running:

Terminal window
sudo systemctl stop thingsboard

Install the ThingsBoard 4.4.0 package:

Terminal window
sudo dpkg -i thingsboard-4.4.deb

Execute the upgrade script:

Terminal window
sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=CE

Start ThingsBoard:

Terminal window
sudo systemctl start thingsboard

If you registered in the Community Grant Program, your instance is licensed and activated as soon as it starts — nothing to do here. If you bought a license instead, after ThingsBoard starts, open it in your browser and activate your license as described in Step 8 of the Ubuntu installation guide.

[Optional] Install the Web Report Component

Section titled “[Optional] Install the Web Report Component”

The Web Report component renders dashboards into PDF and PNG reports. If you need scheduled or on-demand dashboard reports, install it as described in the Ubuntu installation guide.

ThingsBoard 4.4 requires Java 25, while ThingsBoard CE runs on Java 17. Install OpenJDK 25 and make it the default Java version before upgrading:

Terminal window
sudo dnf install -y java-25-openjdk-headless
sudo update-alternatives --set java /usr/lib/jvm/java-25-openjdk/bin/java

Verify the installation:

Terminal window
java -version

The reported version must be 25.

Download the ThingsBoard 4.4.0 package:

Terminal window
wget https://github.com/thingsboard/thingsboard/releases/download/v4.4/thingsboard-4.4.rpm

Stop ThingsBoard service if it is running:

Terminal window
sudo systemctl stop thingsboard

Install the ThingsBoard 4.4.0 package:

Terminal window
sudo rpm -Uvh thingsboard-4.4.rpm

Execute the upgrade script:

Terminal window
sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=CE

Start ThingsBoard:

Terminal window
sudo systemctl start thingsboard

If you registered in the Community Grant Program, your instance is licensed and activated as soon as it starts — nothing to do here. If you bought a license instead, after ThingsBoard starts, open it in your browser and activate your license as described in Step 8 of the CentOS/RHEL installation guide.

[Optional] Install the Web Report Component

Section titled “[Optional] Install the Web Report Component”

The Web Report component renders dashboards into PDF and PNG reports. If you need scheduled or on-demand dashboard reports, install it as described in the CentOS/RHEL installation guide.

ThingsBoard 4.4 requires Java 25, while ThingsBoard CE runs on Java 17. Install JDK 25 and make it the system’s default Java version before upgrading. Verify the installation:

java -version

The reported version must be 25.

Download the ThingsBoard installation package for Windows: thingsboard-windows-4.4.zip.

Stop ThingsBoard service if it is running:

net stop thingsboard
  • Make a backup of previous ThingsBoard CE configuration located in <ThingsBoard install dir>\conf (e.g. C:\thingsboard\conf).
  • Copy the content of thingsboard-windows-4.4.zip to the same location.
  • Compare and merge your old ThingsBoard configuration files (from the backup) with the new ones.

Execute the upgrade script:

C:\thingsboard>upgrade.bat --fromVersion=CE

Start ThingsBoard:

net start thingsboard

If you registered in the Community Grant Program, your instance is licensed and activated as soon as it starts — nothing to do here. If you bought a license instead, after ThingsBoard starts, open it in your browser and activate your license as described in Step 4 of the Docker (Windows) installation guide; the activation screen is the same for every installation type.

Pull the ThingsBoard 4.4.0 and Web Report images:

Terminal window
docker pull thingsboard/tb-node:4.4.0
docker pull thingsboard/tb-web-report:4.4.0

Stop and remove the ThingsBoard CE service:

Terminal window
docker compose stop thingsboard-ce
docker compose rm -f thingsboard-ce

Update your docker-compose.yml according to the Docker installation guide. Make sure to change the image tag to 4.4.0, define the required volumes, and add the Web Report service.

Run the upgrade and start the services:

Terminal window
docker compose run --rm -e UPGRADE_TB=true -e FROM_VERSION="CE" thingsboard
docker compose up -d

If you registered in the Community Grant Program, your instance is licensed and activated as soon as it starts — nothing to do here. If you bought a license instead, after ThingsBoard starts, open it in your browser and activate your license as described in Step 4 of the Docker installation guide.

Pull the ThingsBoard 4.4.0 and Web Report images:

Terminal window
docker pull thingsboard/tb-node:4.4.0
docker pull thingsboard/tb-web-report:4.4.0

Stop the CE services:

Terminal window
./docker-stop-services.sh

Manually merge your current ThingsBoard CE cluster configuration with the default Docker Compose cluster deployment files. Ensure that you transfer all custom environment variables, volume mappings, and external service configurations to the new files.

Run the upgrade and start the services:

Terminal window
./docker-upgrade-tb.sh --fromVersion=CE
./docker-start-services.sh

If you registered in the Community Grant Program, your instance is licensed and activated as soon as it starts — nothing to do here. If you bought a license instead, after ThingsBoard starts, open it in your browser and activate your license as described in Step 9 of the Docker Compose cluster setup guide.

For AWS EKS, Azure AKS, or GCP GKE refer to the corresponding installation guides.

Delete the CE resources from the cluster:

Terminal window
./k8s-delete-resources.sh

ThingsBoard uses a separate repository of Kubernetes scripts with additional components. Clone it into a separate directory:

Terminal window
git clone -b release-4.4.0 https://github.com/thingsboard/thingsboard-pe-k8s.git --depth 1
cd thingsboard-pe-k8s/minikube

Copy your custom settings from the CE configuration (database type, hosts, environment variables, volumes) into the corresponding files of the new scripts.

Upgrade the Community Edition database:

Terminal window
./k8s-upgrade-tb.sh --fromVersion=CE

Deploy the ThingsBoard resources:

Terminal window
./k8s-deploy-resources.sh

Wait until all pods are running:

Terminal window
kubectl get pods -n thingsboard

If you registered in the Community Grant Program, your instance is licensed and activated as soon as it starts — nothing to do here. If you bought a license instead, once all pods are running, open http://{your-cluster-ip} in your browser (get the IP with minikube ip) and activate your license as described in Step 5 of the Minikube cluster setup guide.