본문 바로가기

IT/IoT

[HA] Docker로 Home Assistant 설치 및 초기 설정

반응형

Home Assistant는 다양한 IoT 기기를 연동하고 자동화할 수 있는 플랫폼입니다.

다양한 업체의 IoT 제품을 지원하기 때문에 편리하게 사용이 가능합니다.

Home Assistant를 우분투 서버에 Docker로 설치하고 초기 설정하는 방법을 알아보겠습니다.

 

1. Home Assistant 설치

Docker를 활용해서 HA를 설치하는 것은 간단합니다.

아래 명령어를 통해 컨테이너를 생성하고 실행시킬 수 있습니다.

sudo docker run -d \
--name=home-assistant \
-v /data/homeassistant/config:/config \
-v /etc/localtime:/etc/localtime:ro \
--net=host \
--restart=unless-stopped \
homeassistant/home-assistant

config 디렉토리는 /data/homeassistant/config 대신 실제 사용할 위치를 지정하면 됩니다.

만약 timezone 설정이 되지 않으면 아래 내용을 -v /etc/localtime:/etc/localtime:ro 대신 입력합니다.

-e "TZ=Asia/Seoul"

다른 국가라면 아래 링크에서 timezone을 확인해서 변경하면 됩니다.

https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

 

List of tz database time zones - Wikipedia

From Wikipedia, the free encyclopedia Jump to navigation Jump to search World map showing time zones from the tz database version 2017a This is a list of time zones from release 2017c of the tz database.[1] UTC offsets (columns 6 and 7) are positive east o

en.wikipedia.org

다른 OS에서 Docker로 설치하는 방법은 아래 링크에서 확인 가능합니다.

https://www.home-assistant.io/docs/installation/docker/

 

Installation on Docker

Instructions to install Home Assistant on a Docker.

www.home-assistant.io

컨테이너가 정상적으로 실행되면 HA에 접속이 가능합니다.

 

2. Home Assistant 초기 설정

설치가 완료되면 HA에 http://192.168.1.xxx:8123/ 형태로 접속이 가능합니다.

초기 설정을 진행하기 위해 실제 설치된 장비의 IP:8123을 웹브라우저에서 입력합니다.

유저명과 비밀번호를 입력하고 CREAT ACCOUNT를 클릭하면 계정이 생성되고 로그인 화면으로 이동합니다.

생성한 Username과 Password를 사용해서 로그인할 수 있습니다.

몇 가지 기기는 자동으로 검색이 되기도 합니다.

설정을 통해서 자동으로 검색되지 않도록 할 수 있습니다.

기본적인 설정을 위해 Docker 생성시 마운트했던 config 디렉토리의 configuration.yaml을 수정해야 합니다.

가장 먼저 수정할 부분은 homeassistant: 하위의 내용들입니다.

homeassistant:
  # Name of the location where Home Assistant is running
  name: Home
  # Location required to calculate the time the sun rises and sets
  latitude: 37.5662
  longitude: 126.9779
  # Impacts weather/sunrise data (altitude above sea level in meters)
  elevation: 41
  # metric for Metric, imperial for Imperial
  unit_system: metric
  # Pick yours from here: http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
  time_zone: Asia/Seoul
  # Customization file
  customize: !include customize.yaml

latitude와 longitude, elevation 값은 구글 어스(Google Earth)에서 확인이 가능합니다.

구글 어스에서 주소를 검색하면 주소창에서 위도와 경도를 확인할 수 있습니다.

소수점 4자리까지 값을 사용하고 마우스를 이동시키면 해당 위치의 고도를 우측 하단에서 확인 가능합니다.

해당 값을 homeassistant 하위에 위치한 각 값에 위의 예제처럼 입력하면 됩니다.

좌표 값을 입력하고 컨테이너를 재시작하면 HA의 Sun 정보가 정상적으로 표시됩니다.

time_zone은 아래 링크에서 확인해서 변경해주면 되는데 한국은 Asia/Seoul 값을 사용하면 됩니다.

http://en.wikipedia.org/wiki/List_of_tz_database_time_zones

 

List of tz database time zones - Wikipedia

From Wikipedia, the free encyclopedia Jump to navigation Jump to search World map showing time zones from the tz database version 2017a This is a list of time zones from release 2017c of the tz database.[1] UTC offsets (columns 6 and 7) are positive east o

en.wikipedia.org

다음으로 불필요한 Welcome Home! 을 삭제하기 위해서 아래처럼 주석처리 합니다.

# introduction:

introduction: 앞에 #를 추가하면 간단하게 해당 정보가 사라집니다.

 

3 . Dark Sky 날씨 컴포넌트 추가

아래 링크를 통해서 Dark Sky 날씨 컴포넌트 추가해서 사용하면 됩니다.

2019/01/16 - [IT/IoT] - [HA] Home Assistant에 날씨 정보 추가(Dark Sky)

 

[HA] Home Assistant에 날씨 정보 추가(Dark Sky)

날씨 정보를 위해 기존에 사용하던 Yahoo Weather가 더 이상 동작하지 않습니다. 대신 Dark Sky를 적용하는 방법을 소개합니다. Dark Sky 날씨 정보를 적용하기 위해서 먼저 계정을 생성해야 합니다. 아래 링크를..

psychoria.tistory.com

이렇게 기본적인 설정을 마치면 파일을 저장하고 컨테이너를 재시작합니다.

sudo docker restart home-assistant

이것으로 기본적인 HA 설정이 완료됩니다.

반응형