홈 어시스턴트 구축하기: 설치부터 자동화와 대시보드 구성까지

홈 어시스턴트 구축하기를 처음 시작하는 분을 위해 Home Assistant OS와 Docker 설치 방식을 비교하고, 기기 통합·엔터티 상태·자동화·대시보드 구성과 문제 확인 방법을 정리했습니다.

a computer screen with a program running on it

Photo by Mohammad Rahmani on Unsplash

목차

시작 전 조건

가정용 네트워크가 있고 공유기 설정과 기본적인 파일 편집이 가능하면 이 글을 따라올 수 있습니다.

스마트 기기, 안정적인 전원, 같은 네트워크에 연결된 관리용 PC를 준비하세요. 설정을 바꾸기 전에는 Home Assistant 백업을 별도로 보관해야 합니다. 백업은 원본 기기의 고장이나 저장장치 손상을 막지 못하므로, 다른 저장 위치에도 복사해 두어야 합니다.

설치 방식과 실행 환경

비교 항목 Home Assistant OS Home Assistant Container 가상 머신 실행
설치 난이도 낮음 중간 높음
운영 관리 전용 화면에서 관리 Docker 직접 관리 가상화 환경 관리
확장 기능 편리함 별도 구성 필요 환경에 따라 다름
적합한 대상 처음 구축하는 사용자 Docker·Linux 사용자 기존 서버 보유자

처음이라면 Home Assistant OS를 선택하는 편이 좋습니다. Docker를 이미 사용하며 여러 서비스를 함께 운영한다면 Container가 적합하지만, 업데이트·볼륨·백업을 직접 관리해야 합니다.

Container를 선택했다면 Linux 셸에서 Docker가 실행되는 환경을 준비하고, Docker Hub 등에서 설치할 안정 버전을 확인합니다. 아래의 HA_VERSION은 현재 셸 세션에서만 유효한 임시 변수입니다.

export HA_VERSION=확인한_안정_버전
docker pull homeassistant/home-assistant:${HA_VERSION}
mkdir -p ~/homeassistant/config
docker run -d --name homeassistant --restart=unless-stopped -v ~/homeassistant/config:/config --network=host homeassistant/home-assistant:${HA_VERSION}

실행 전 Docker Hub 등에서 최신 안정 버전을 확인해 태그를 고정하세요. latest를 사용하면 시점에 따라 다른 이미지가 설치될 수 있습니다.

통합 구성과 엔터티 상태 모델

설치 후 Settings에서 Devices & services로 이동해 Add integration을 선택합니다. 제조사나 통신 방식에 맞는 통합을 추가하고, 발견된 기기를 인증하면 장치와 엔터티가 등록됩니다. 네트워크 검색이 되지 않으면 기기가 같은 공유기에 연결됐는지, 방화벽이 검색을 차단하지 않는지 확인하세요.

장치는 실제 기기이고 엔터티는 제어하거나 상태를 읽는 단위입니다. 예를 들어 조명 장치 안에 켜짐 상태를 가진 조명 엔터티가 포함될 수 있으며, 엔터티에는 on, off, 온도 같은 상태와 속성이 저장됩니다. 자동화는 이 상태 변화를 기준으로 실행됩니다.

자동화 트리거·조건·액션

자동화는 트리거, 조건, 액션 순서로 설계합니다. 트리거는 실행 계기이고, 조건은 실행을 허용할 상황이며, 액션은 실제 동작입니다. 예를 들어 특정 시간에 현관 조명을 켜되, 사람이 집에 있을 때만 실행하도록 만들 수 있습니다. 아래 YAML의 person.examplelight.entry는 예시 엔터티 ID이므로 실제 구성에서는 자신의 엔터티 ID로 바꿔야 합니다.

alias: 현관 조명 켜기
triggers:
  - trigger: time
    at: '19:00:00'
conditions:
  - condition: state
    entity_id: person.example
    state: home
actions:
  - action: light.turn_on
    target:
      entity_id: light.entry
mode: single

대시보드와 영역 구성

home_assistant dashboard smart_home gas_valve lighting door_lock elevator air_purifier temperature pm2_5 filter thermostat GENERIC UI캡처

Settings의 Areas and zones에서 거실, 침실, 현관 같은 영역을 먼저 만들고 기기를 배정하세요. 영역을 정리하면 대시보드에서 특정 공간의 조명·센서·온도를 묶어 볼 수 있어 엔터티를 직접 찾는 번거로움이 줄어듭니다.

대시보드는 자주 확인하는 상태를 위에 배치하고, 제어 빈도가 낮은 센서는 별도 뷰로 분리하면 관리하기 쉽습니다. 처음부터 모든 엔터티를 넣기보다 조명, 온도, 문 열림처럼 실제로 사용할 항목만 추가하는 편이 화면과 자동화 구조를 단순하게 만듭니다.

자주 묻는 질문

Docker와 Home Assistant OS 중 무엇을 고르면 되나요?

전용 장치에서 업데이트와 확장 기능을 관리하려면 Home Assistant OS가 편하고, Linux·Docker 환경에서 다른 서비스와 함께 운영하며 볼륨·업데이트·백업을 직접 관리하려면 Container가 적합합니다.

기기가 자동으로 검색되지 않으면 어떻게 하나요?

통합 추가 화면에서 제조사나 통신 방식에 맞는 통합을 선택해 수동 설정을 시도하고, 해당 통합이 기기의 연결 방식을 지원하는지 확인하세요.

자동화가 실행됐는지 어디에서 확인하나요?

자동화 목록에서 해당 항목을 열고 실행 기록의 각 단계를 확인하세요. 트리거가 감지되지 않았는지, 조건에서 멈췄는지, 액션까지 진행됐는지를 구분할 수 있습니다. 조건 결과가 거짓인 것은 오류가 아니라 실행 조건을 충족하지 않아 액션을 건너뛴 정상적인 결과입니다.

결론

Home Assistant는 설치 방식보다 기기 등록, 엔터티 이름, 자동화 조건을 일관되게 관리하는 것이 중요합니다. 처음에는 작은 영역과 자동화부터 구성하고 백업을 확인한 뒤 확장하세요.

관련 글