Thingsboard 시작하기!

최지한·2025년 3월 30일

IoT

목록 보기
1/1
post-thumbnail

🧰 ThingsBoard 설치 및 초기 설정 (Docker 기반)

오늘은 IoT 플랫폼으로 많이 활용되는 ThingsBoard를 Ubuntu 서버에 설치하고,
Docker-Compose를 통해 PostgreSQL과 함께 실행하는 전체 과정을 기록해보았습니다.
사전 준비부터 방화벽 설정, 데이터베이스 접근 설정까지 모두 담았으니
처음 설치하시는 분들께 도움이 되었으면 좋겠습니다 😊


📌 ThingsBoard란?

ThingsBoard는 오픈소스 기반의 IoT 플랫폼으로,
디바이스 관리, 데이터 수집 및 시각화, 경고 시스템, 원격 제어 기능 등을 지원합니다.
IoT 데이터를 실시간으로 모니터링하거나, 사용자 맞춤 대시보드를 구성할 수 있는 것이 특징이에요.

공식 사이트: https://thingsboard.io


⚙️ 설치 전 준비 사항

Ubuntu 서버 환경에서 아래 순서대로 작업을 진행합니다.


✅ 1. Root 계정 활성화

sudo passwd root

✅ 2. 시스템 패키지 업데이트

apt-get update
apt-get upgrade -y

✅ 3. SSH 활성화 및 방화벽 설정

sudo apt-get update && sudo apt-get install openssh-server
sudo systemctl status ssh
sudo systemctl start ssh
sudo systemctl enable ssh
sudo ufw allow ssh
sudo ufw enable
sudo ufw status

✅ 4. Docker & Docker Compose 설치

sudo apt install -y docker.io
sudo apt install -y docker-compose

✅ 5. 프로젝트 디렉토리 생성 및 설정 파일 작성

mkdir -p ~/thingsboard && cd ~/thingsboard
nano docker-compose.yml

🧾 docker-compose.yml 내용

version: '3.3'

services:
  postgres:
    image: postgres:14
    container_name: postgres
    restart: always
    environment:
      POSTGRES_DB: thingsboard
      POSTGRES_USER: tb_user
      POSTGRES_PASSWORD: tb_password
    ports:
      - "5432:5432"
    volumes:
      - postgres-data:/var/lib/postgresql/data

  tb:
    image: thingsboard/tb-postgres
    container_name: thingsboard
    restart: always
    depends_on:
      - postgres
    ports:
      - "8080:9090"
      - "1883:1883"
      - "5683:5683/udp"
    environment:
      SPRING_DATASOURCE_URL: jdbc:postgresql://postgres:5432/thingsboard
      SPRING_DATASOURCE_USERNAME: tb_user
      SPRING_DATASOURCE_PASSWORD: tb_password
      TB_QUEUE_TYPE: in-memory
    volumes:
      - tb-data:/data
      - tb-logs:/var/log/thingsboard

volumes:
  postgres-data:
  tb-data:
  tb-logs:

✅ 6. 방화벽에서 포트 열기

sudo ufw allow 8080/tcp
sudo ufw allow 9090/tcp
sudo ufw allow 1883/tcp
sudo ufw allow 5432/tcp
sudo ufw allow 5683/udp

✅ 7. Docker 권한 설정

sudo usermod -aG docker <사용자명>
logout  # 로그아웃 후 다시 로그인하여 적용

✅ 8. 컨테이너 실행

cd ~/thingsboard
docker-compose up -d

✅ 9. PostgreSQL 외부 접속 설정

docker exec -it -u 0 postgres bash
apt-get update && apt-get install nano -y
cd /var/lib/postgresql/data
nano pg_hba.conf
# 아래 라인 추가 또는 수정
host    all             all             0.0.0.0/0            md5

수정 후 저장: Ctrl + XYEnter
컨테이너 종료:

exit
docker restart postgres

✅ 완료 후 접속 확인

브라우저에서 아래 주소로 접속합니다:

http://<서버 IP>:8080
  • 기본 계정: sysadmin@thingsboard.org
  • 기본 비밀번호: sysadmin

📝 마무리

이제 ThingsBoard가 정상 실행되었다면,
디바이스 연결, 데이터 시각화 대시보드 구성 등을 진행할 수 있어요!

다음 글에서는 Web UI 설정, 장치 등록, 텔레메트리 수집 등도 다뤄볼 예정입니다 🙌
궁금한 점이 있다면 언제든 댓글 주세요!


2개의 댓글

comment-user-thumbnail
2025년 3월 30일

잘보구 갑니당!

답글 달기
comment-user-thumbnail
2025년 3월 30일

잘보구갑니당

답글 달기