Deploying ThingsBoard

Guide for deploying the ThingsBoard IoT platform on the ALPON X4 micro-edge computer using a containerized setup.

ThingsBoard is an open-source IoT platform designed for the rapid development, management, and scaling of IoT projects. This guide uses the thingsboard/tb-postgres container as an example, though other ThingsBoard containers can be configured with different port and environment values as specified in the ThingsBoard documentation.

This guide provides a step-by-step approach to deploying the ThingsBoard container on ALPON X4. It covers the necessary prerequisites, deployment configuration, and final steps to ensure a successful installation.

Deployment

Ensure the thingsboard/tb-postgres container is available in your Sixfab registry. If it is not, follow these steps to add it:

  1. Open a terminal on your personal computer and pull the ThingsBoard container:

    docker pull --platform=linux/arm64 thingsboard/tb-postgres
    
  2. Log in to the Sixfab Connect platform, navigate to the Sixfab Registry page
  3. Click on + Add Container and follow the prompts to push container to Sixfab registry.

    📘

    Manage and Deploy Applications

    Visit the Manage & Deploy Applications page for all the necessary details on pushing your container image to the Sixfab Registry.

Alternative Deployment Option:

If you prefer not to use the Sixfab registry, select the I would like to use my own container path option during deployment and enter: thingsboard/tb-postgres:latest

This will deploy the container directly from Docker Hub.

Configuration

  1. Go to the Application section of your asset on Sixfab Connect.

  2. Click the + Deploy button to configure and deploy the container.

  3. In the Deploy Container window, use the following settings:

    • Container Name: thingsboard

    • Image: Select the ThingsBoard image and tag pushed to the Sixfab Registry, or follow the steps mentioned in the 'Alternative Deployment Option'.

    • Environment: Click "+ Add More" in the environment section and add the following values:

      KeyValue
      TB_QUEUE_TYPEin-memory

    • Ports: Click "+ Add More" in the Ports section and add the following ports:

      FromTo
      308809090
      318831883
      307707070
      306835683
      306845684
      306855685
      306865686
      306875687
      306885688

    • Volumes: Click "+ Add More" in the Volumes section and configure the following volumes:

      Read/WriteLocal PathTarget Path
      Read/Write/home/alpon/tb-data/data
      Read/Write/home/alpon/tb-logs/var/log/thingsboard

      Before deploying, remember to create local paths on the device and authorize them with the following commands. If your username is not “alpon”, change it in the command.

      sudo chown -R 799:799 /home/alpon/.mytb-data
      sudo chown -R 799:799 /home/alpon/.mytb-logs
      
    • Click the "+ Deploy" button to deploy ThingsBoard.



Check Deployment

Once deployment is complete:

  • Locate the local IP address. The device's IP address can be viewed under Assets Details → Network tab → Interface Monitoring — Details.
  • Open a web browser and navigate to: http://<DEVICE_IP_ADDRESS>:30880 to access the ThingsBoard dashboard.