본문으로 건너뛰기
버전: 3.2.x

서버 구축

CoBiz는 다수의 로봇을 실시간으로 제어하고 관제하기 위해 중앙 관제 서버를 필요로 합니다. 이 문서에서는 CoBiz 서버를 구축하는 방법에 대해 안내합니다.

설치 파일 필요

해당 과정을 진행하기 위해서는 CoBiz 이미지 압축 파일이 필요합니다. 이미지 압축 파일은 CoBiz 고객 지원팀을 통해 제공받을 수 있습니다.

시스템 요구사항

CoBiz 서버를 구축하기 위해서는 다음과 같은 시스템 요구사항을 충족해야 합니다.

하드웨어 권장 사양

CPURAMStorageNetwork
8 Core32GB1TB SSD100Mbps

OS

  • Ubuntu 20.04 LTS 이상

Docker

Docker와 Docker Compose가 설치되어 있지 않다면 Docker 설치 가이드를 참고하여 설치해 주세요.

CoBiz는 Docker를 사용하여 서버를 구축합니다. 따라서 Docker와 Docker Compose가 설치되어 있어야 합니다.

  • Docker Engine 24.0 이상
  • Docker Compose 2.x 이상

네트워크 요구사항

IP

CoBiz 서버는 로봇, 클라이언트와 통신하기 위해 공인 고정 아이피가 필요합니다. 유동 아이피를 사용하는 경우 서버가 재시작될 때마다 IP가 변경되어 로봇과 클라이언트가 서버를 찾을 수 없습니다.

도메인 및 인증서

LTE 로봇 관제를 위해 도메인이 필요합니다. 도메인의 A 레코드에 발급받은 공인 IP 주소를 추가해 주세요.

또한 HTTPS 프로토콜을 사용하기 위해 SSL 인증서가 필요합니다. certbot을 사용하여 무료 SSL 인증서를 발급받을 수 있습니다.

로컬 네트워크 환경

공인 아이피 없이 내부망으로만 사용하는 경우, Bind9이 설정된 패키지를 제공드립니다. 이 경우 별도 공유기가 필요하며, 로봇은 Wifi로만 연결이 가능합니다(LTE 지원 불가).

포트 개방

CoBiz 서버는 로봇, 클라이언트와 통신하기 위해 다음 포트가 개방되어 있어야 합니다. 방화벽 또는 NAT 라우터의 포트포워딩 정책을 확인해 주세요.

  • 80: http
  • 443: https
  • 8276: ws
  • 8277: wss

docker-compose.yml 설정

version: '3.8'
services:
cobiz:
image: 'ghcr.io/teamgrit-lab/cobiz:3.2.0'
ports:
- '80:80'
- '443:443'
volumes:
- ./certs:/certs
- ./database:/app/db
environment:
- DEVICE_REGISTRATION_SECRET_KEY=<secret_key>
- MOTH_HOST=moth.example.com
- MOTH_PORT=8277
- MOTH_KEY=moth_key
- ADMIN_EMAIL=admin@example.com
- ADMIN_PASSWORD=admin_password
restart: unless-stopped

CoBiz 서버의 기능을 활용하기 위해서는 다음 환경변수들을 설정해야 합니다.

  • DEVICE_REGISTRATION_SECRET_KEY: CoBiz 서버와 로봇 간의 통신에 사용되는 비밀 키 입니다. 각 로봇에도 똑같은 비밀 키를 설정해야 로봇을 CoBiz 서버에 등록할 수 있습니다.
  • MOTH_KEY: CoBiz 서버에서 사용하는 Moth 서버의 비밀 키입니다.
  • MOTH_HOST: CoBiz 서버에서 사용하는 Moth 서버의 URL입니다.
  • MOTH_PORT: CoBiz 서버에서 사용하는 Moth 서버의 포트입니다.
  • ADMIN_EMAIL: CoBiz 서버의 최초 관리자 이메일 주소입니다.
  • ADMIN_PASSWORD: CoBiz 서버의 최초 관리자 비밀번호입니다.

서버 실행

모든 설정을 마친 뒤, 다음 명령어를 통해 서버를 실행할 수 있습니다.

docker-compose up -d

실행 중인 서버를 종료할 때는 다음 명령어를 입력합니다.

docker-compose down