- Prerequisites
- Step 1. Obtain the license key
- Step 2. Checkout Trendz Analytics image on Docker Hub
- Step 3. Running Trendz service
- Detaching, stop and start commands
- Upgrade Trendz Service
- Troubleshooting
- Next steps
This guide will help you to install and start Trendz Analytics using Docker on Linux or Mac OS.
Prerequisites
Step 1. Obtain the license key
We assume you have already chosen subscription plan for Trendz and have license key. If not, please get your Free Trial license before you proceed. See How-to get pay-as-you-go subscription for more details.
Note: We will reference the license key you have obtained during this step as PUT_YOUR_LICENSE_SECRET_HERE later in this guide.
Step 2. Checkout Trendz Analytics image on Docker Hub
Open official Trendz Analytics Docker Hub page and proceed to checkout.
Populate basic information about yourself and click “Get Content”
Step 3. Running Trendz service
Docker Compose setup
Make sure your have logged in to docker hub using command line.
Create docker compose file for Trendz Analytics service:
1
sudo nano docker-compose.yml
Add the following line to the yml file. Don’t forget to replace “PUT_YOUR_LICENSE_SECRET_HERE” with your license secret obtained on the first step
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
version: '3.0'
services:
mytrendz:
restart: always
image: "thingsboard/trendz:1.9.2-HF2"
ports:
- "8888:8888"
environment:
TB_API_URL: http://10.0.0.101:8080
TRENDZ_LICENSE_SECRET: PUT_YOUR_LICENSE_SECRET_HERE
TRENDZ_LICENSE_INSTANCE_DATA_FILE: /data/license.data
SPRING_DATASOURCE_URL: jdbc:postgresql://postgres:5432/trendz
SPRING_DATASOURCE_USERNAME: postgres
SPRING_DATASOURCE_PASSWORD: postgres
volumes:
- ~/.mytrendz-data:/data
- ~/.mytrendz-logs:/var/log/trendz
postgres:
restart: always
image: "postgres:12"
ports:
- "5432"
environment:
POSTGRES_DB: trendz
POSTGRES_PASSWORD: postgres
volumes:
- ~/.mytrendz-data/db:/var/lib/postgresql/data
Where:
TB_API_URL
- url for connecting to ThingsBoard Rest API (for example http://10.5.0.11:8080). Note that ThingsBoard IP address should be resolvable from Trendz docker containerPUT_YOUR_LICENSE_SECRET_HERE
- placeholder for your license secret obtained on the first step8888:8888
- connect local port 8888 to exposed internal HTTP port 8888~/.mytrendz-data:/data
- mounts the volume~/.mytrendz-data
to Trendz data directory~/.mytrendz-data/db:/var/lib/postgresql/datad
- mounts the volume~/.mytrendz-data/db
to Postgres data directory~/.mytrendz-logs:/var/log/thingsboard
- mounts the volume~/.mytrendz-logs
to Trendz logs directorymytrendz
- friendly local name of this machine--restart always
- automatically start Trendz in case of system reboot and restart in case of failure.thingsboard/trendz:1.9.2-HF2
- docker image
在启动Docker容器之前请运行以下命令以创建用于存储数据和日志的目录然后将其所有者更改为Docker容器用户,以便能够更改用户使用chown命令该命令需要sudo权限(该命令将要求sudo访问的密码):
1
2
mkdir -p ~/.mytrendz-data && sudo chown -R 799:799 ~/.mytrendz-data
mkdir -p ~/.mytrendz-logs && sudo chown -R 799:799 ~/.mytrendz-logs
NOTE: replace directory ~/.mytrendz-data and ~/.mytrendz-logs with directories you’re planning to used in docker-compose.yml.
Running service
在包含该文件的目录终端中执行以下命令启动此docker compos:docker-compose.yml
1
2
3
docker compose pull
docker compose up -d
docker compose logs -f mytrendz
After executing this command you can open http://{your-host-ip}:8888
in you browser (for ex. http://localhost:8888
).
You should see Trendz login page.
Authentication
For first authentication you need to use Tenant Administrator credentials from your ThingsBoard
Trendz uses ThingsBoard as an authentication service. During first sign in ThingsBoard service should be also available to validate credentials.
Detaching, stop and start commands
你可以使用Ctrl-p
Ctrl-q
与会话终端分离容器将继续在后台运行。
如果出现任何问题可以检查服务日志中的错误例如:要查看ThingsBoard容器日志。
请执行以下命令:
1
docker compose logs -f mytrendz
停止容器:
1
docker compose stop mytrendz
启动容器:
1
docker compose start mytrendz
Upgrade Trendz Service
Below is example on how to upgrade from 1.8.0 to 1.9.2
- Create a dump of your database:
1
docker compose exec postgres sh -c "pg_dump -U postgres trendz > /var/lib/postgresql/data/trendz_dump"
- Set upgradeversion variable to your previous Trendz version.
1
docker compose exec mytrendz sh -c "echo '1.8.0' > /data/.upgradeversion"
-
After this you need to update docker-compose.yml as in Step 3 but with 1.9.2 instead of 1.8.0-SNAPSHOT:
-
Restart Trendz container
1
2
docker compose stop mytrendz
docker compose up -d
To upgrade Trendz to the latest version those steps should be done for each intermediate version.
Troubleshooting
DNS issues
注意:如果你发现与DNS问题相关的错误,例如
1
127.0.1.1:53: cannot unmarshal DNS message
你可以将系统配置为使用 Google公共DNS服务器。
请参阅相应的Linux和Mac OS说明
Next steps
-
Getting started guide - These guide provide quick overview of main Trendz features.
-
Calculated Fields - Learn about Calculated fields and how to use them.
-
States - Learn how to define and analyse states for assets based on raw telemetry.
-
Group and Aggregate data - Learn how to group and aggregate data in Trendz.
-
Prediction - Learn how to make forecasts and predict telemetry behavior.
-
Filters - Learn how filter dataset during analysis.
-
Available Visualizations - Learn about visualization widgets available in Trendz and how to configure them.
-
Share and embed Visualizations - Learn how to add Trendz visualizations on ThingsBoard dashboard or 3rd party web pages.