Docker安装ThingsBoard

本章将介绍ThingsBoard的本地环境搭建,以及源码的编译安装。本机环境:centos7,docker

环境安装

开发环境要求:

  1. centos7 ;
  2. docker;

如为安装Centos7,参考教材:在MacOS上使用VMware虚拟机安装CentOS 7操作系统,并配置静态IP地址_macbook vmwaream安装centos7 自定义ip-CSDN博客

1、在虚拟机上安装docker

复制代码
yum install docker

2、创建docker-compose.yml 文件,并填入参数,保存

复制代码
vi docker-compose.yml

version: '3.0'
services:
  mytb:
    restart: always
    image: "thingsboard/tb-postgres"
    ports:
      - "8080:9090"
      - "1883:1883"
      - "7070:7070"
      - "5683-5688:5683-5688/udp"
    environment:
      TB_QUEUE_TYPE: in-memory
    volumes:
      - ~/.mytb-data:/data
      - ~/.mytb-logs:/var/log/thingsboard

说明:

  • docker run - 运行容器
  • -it - 将终端会话与当前ThingsBoard进程输出连接
  • 8080:9090 - 将本地端口8080转发至HTTP端口9090
  • 1883:1883 - 将本地端口1883转发至MQTT端口1883
  • 5683:5683 - 将本地端口5683转发至MQTT端口5683
  • ~/.mytb-data:/data - 将主机的目录~/.mytb-data挂载到ThingsBoard数据目录
  • ~/.mytb-logs:/var/log/thingsboard - 将主机的目录~/.mytb-logs挂载到ThingsBoard日志目录
  • mytb - 计算机本地名称
  • restart: always - 在系统重新启动的情况下自动启动ThingsBoard在出现故障的情况下自动重新启动ThingsBoard。
  • image: thingsboard/tb-postgres - docker镜像也可以是thingsboard/tb-cassandrathingsboard/tb

在启动Docker容器之前请运行以下命令以创建用于存储数据和日志的目录然后将其所有者更改为Docker容器用户,以便能够更改用户使用chown命令该命令需要sudo权限(该命令将要求sudo访问的密码):

复制代码
mkdir -p ~/.mytb-data && sudo chown -R 799:799 ~/.mytb-data
mkdir -p ~/.mytb-logs && sudo chown -R 799:799 ~/.mytb-logs

注意

使用~/.mytb-data~/.mytb-logs目录替换目录docker-compose.yml文件中设置的目录

在包含该文件的目录终端中执行以下命令启动此docker compos:docker-compose.yml

复制代码
docker compose pull
docker compose up -d
docker compose logs -f mytb

执行完命令后你可以http://{your-host-ip}:8080在浏览器中打开(例如http://localhost:9090)。 使用以下默认凭据:

可以在帐户详情页面中更改每个帐户的密码。

分离、停止和启动

你可以使用Ctrl-p Ctrl-q与会话终端分离容器将继续在后台运行。

如果出现任何问题可以检查服务日志中的错误例如:要查看ThingsBoard容器日志。

请执行以下命令:

复制代码
docker compose logs -f mytb

停止容器:

复制代码
docker compose stop mytb

启动容器:

复制代码
docker compose start mytb

升级

为了更新到最新的镜像请执行以下命令:

复制代码
docker pull thingsboard/tb-postgres
docker compose stop
docker run -it -v ~/.mytb-data:/data --rm thingsboard/tb-postgres upgrade-tb.sh
docker compose rm mytb
docker compose up

注意 : 如果你使用不同的数据库,则在所有命令中将映像名称从更改为thingsboard/tb-postgresthingsboard/tb-cassandrathingsboard/tb

注意 : 将主机的目录替换为~/.mytb-data容器创建期间使用的目录。

注意 :如果你使用了一个数据库并想尝试另一个数据库则使用docker-compose rm命令删除当前的docker容器,并在docker-compose.yml中修改成~/.mytb-data目录。

相关推荐
shawnyz1 小时前
HAPROXY负载均衡
运维·负载均衡
林开落L5 小时前
解决云服务器内存不足:2 分钟搞定 Ubuntu swap 交换区配置(新手友好版)
运维·服务器·ubuntu·swap交换区
初恋叫萱萱5 小时前
深入解析 Rust + LLM 开发:手把手教你写一个 AI 运维助手
运维·人工智能·rust
加农炮手Jinx5 小时前
Flutter for OpenHarmony: Flutter 三方库 icon_font_generator 自动化将 SVG 图标集转化为字体文件(鸿蒙矢量资源全自动管理)
运维·flutter·华为·自动化·harmonyos·devops
声声长乐7 小时前
Jenkins + Docker 完整部署指南
ubuntu·docker·jenkins
雨大王5128 小时前
汽车生产智能计划助手如何提升排产效率并降低库存积压?
大数据·运维
以太浮标9 小时前
华为eNSP综合实验之- 3a认证配置案例及解析(AAA认证)
运维·tcp/ip·网络安全·华为·信息与通信
No8g攻城狮9 小时前
【Linux】Linux nano 编辑器全攻略:从入门到精通
linux·运维·编辑器·nano
2301_8059629310 小时前
arduino IDE如何设置代理
运维·服务器
shughui11 小时前
Docker Desktop下载、安装、配置、使用
运维·docker·容器·自动化