본문 바로가기

Tech

Home Assistant Traccar 서버 이전하기

저는 차량용 추적 프로그램으로 Traccar을 이용하고 있습니다, 물론 차 자체에서 지원하는건 아니고

AiBox 라고 말하는, 차량용 카플레이 프로토콜을 이용하는 안드로이드 기기가 있습니다 저는 그 기기를 이용해서 셋팅은 해놨습니다.

 

서버는 직접 도커에 올리는 선택지도 있지만, 아무래도 타인이 만들어준걸 그냥 쓰는게 편한부분이 꽤나 있기 때문에 최초 셋팅 당시에는 Home Assistant (이하 HA) 에 애드온으로 있기에 쓰고 있었습니다 만...

 

근데 문제는... 이 애드온 더이상 업데이트가 안됩니다.

 

 

해외 HA 포럼에서도 그냥 백업하고, 도커로 올려서 직접 쓰세요 / 직접 설치하세요 대부분 답변이였고

마침 주말이여서 이전을 결정 했습니다.

 

*아참 HA에 있는 구 버전으로도 사용 자체는 가능 했습니다,

문제는 Traccar 클라이언트 (안드로이드 앱) 이 업데이트 되면서 전송되는 규격이 바뀐건지 일부 정보가 누락되면서 안뜨더라구요.

 


1. HA 통짜로 백업하기

* HA 데이터를 직접 엑세스 할수 있으면, 직접 하셔도 되지만 저는 일단 간단하게 처리할수 있는 방안에서 시작했습니다.

 

우선 HA에서 "설정 > 시스템 > 백업" 에서 "모든 애드온" 포함해서 백업을 진행합니다,

그리고 백업된 파일을 누르고, Traccar 가 있는지 확인해봅니다.

 

 

그러면 오른쪽 ... 을 눌러 다운로드를 진행합니다.

 

 

그럼 백업 준비는 완료.

 


2. docker compose 셋팅하기

 

저는 다음과 같은 docker-compose.yml 로 셋팅했습니다. 오픈 포트는 8082 입니다.

앞에 폴더 경로는 바꾸셔도 되지만, 뒤에는 변경하시면 안됩니다.

 

저는 yml 파일과 동일한 디렉토리에서 관리하고 싶어서 동일한 디렉토리에 logs, data 폴더로 생성했습니다.

services:
  traccar:
    image: traccar/traccar:latest
    restart: unless-stopped
    environment:
      - TZ=Asia/Seoul
    healthcheck:
      test: [ "CMD", "curl", "-fsS", "http://localhost:8082/api/health" ]
      interval: 2m
      timeout: 5s
      start_period: 1h
      retries: 3
    ports:
      - "8082:8082"
    volumes:
      - ./logs:/opt/traccar/logs
      - ./data:/opt/traccar/data

 


3. 데이터 옮기기

HA 에서 받은 압축파일을 해제하시면, ~~~_traccar.tar.gz가 있습니다. 압축 해제후 db을 확보하세요.

 

해당 파일을 위 data 폴더로 옮겨줍니다

 


 

4. 이름 바꾸기

HA내의 Traccar는 일부 설정이 다릅니다.. 근데 별건 없고 prefix 만 수정해주면 됩니다.

 

traccar.trace.db -> database.trace.db

traccar.mv.db -> database.mv.db

 

 


5. 서버 켜기

docker compose up -d 해주고, http://서버IP:8082 로 들어가면 됩니다.

 

 

 

그리고 원래 쓰던 이메일/패스워드로 로그인 하면 됩니다.