• Skip to primary navigation
  • Skip to main content

IoTmaker

사물인터넷에 대한 모든 것 여기서 해결하셔요!

  • 홈
  • 책:마이크로파이썬을 활용한 사물인터넷
  • 책:따라 하면서 배우는 사물인터넷
  • 온라인 교육 코스
  • 새로운 소식
  • 의견보내기
  • 내 수강정보
  • 로그인
  • 회원가입

라즈베리파이에 도커 방식으로 Home Assistant와 IoT용 서버 설치하기

책에서 사용하는 부품 구입하기
여기서는 IOTstack이라는 스크립트를 이용하여 도커(Docker)에 Home Assistant를 설치하는 방법을 안내하고 있습니다.
[안내]본문의 텍스트 박스 내용 복사하는 방법

라즈베리 파이에 대하여

라즈베리 파이(Raspberry Pi)는 라즈베리 파이재단에서 만든 싱글 보드 컴퓨터입니다. 최신 제품은 라즈베리 파이 4 모델 B 입니다.

라즈베리 파이를 IoT 서버로 사용하는 경우에는 라즈베리 파이 4 모델 B 또는 라즈베리 파이 3 모델 B+를 사용하는 것이 좋습니다.

 1  헤드리스 방식으로 라즈베리 파이 OS 설치하기

PC에서 SD카드에 OS를 다운로드하고 필요한 파일을 작성하는 절차입니다.

라즈베리파이에 OS 설치하기

 2  IOTstack에서 도커(Docker)설치하기

IoT서버로 사용하기 위하여 필요한 여러 가지 소프트웨어의 설치와 설정 작업을 하는 단계입니다. 여러 가지 명령어를 한꺼번에 처리하기 위하여 gcgarner가 작성한 IOTstack이라는 스크립트를 사용합니다.

라즈베리파이 라이브러리를 최신 상태로 만들기
라즈베리파이 OS를 새롭게 설치한 후 또는 추가로 라이브러리를 설치하기 전에는 이미 설치되어 있는 라이브러리를 최신 상태로 바꿀 필요가 있습니다.

다음 명령어를 연달아 입력하여 라이브러리를 최신 상태로 유지합니다.

sudo apt update
sudo apt update 명령어 실행 결과 화면
sudo apt upgrade

실행 중간에
After this operation, xxxx kB of additional disk space will be used.
Do you want to continue? [Y/n]
라는 메시지가 출력됩니다. y을 입력하고 Enter를 누르면 실행이 계속됩니다. 처리해야 할 내용이 많으면 시간이 많이 걸립니다.

sudo apt upgrade 명령어 실행 결과 화면
IOTstack 스크립트 다운로드하기
IOTstack은 라즈베리 파이에 IoT와 관련된 소프트웨어를 docker 형식으로 설치할 수 있도록 해 주는 스크립트입니다. docker는 소트웨어를 컨테이너와 같은 표준적인 방식으로 쉽게 설치할 수 있게 해주는 소프트웨어 플랫폼입니다.

여기에서는 IOTstack을 이용하여 Mosquitto와 Node-RED를 설치합니다. 나중에 다른 소프트웨어도 추가로 설치할 수 있습니다.

 1  curl 설치하기
curl은 프로그램 저장소에서 파일을 복사해 오는 소프트웨어입니다.

sudo apt install -y curl
 2  github에서 IOTsatck 스크립트 다운로드 받기

curl -fsSL https://raw.githubusercontent.com/SensorsIot/IOTstack/master/install.sh | bash
IOTstack 메뉴에서 docker 설치하기
IOTstack 메뉴에서 docker를 설치합니다.

 1  IOTsatck 실행 디렉토리로 이동하기

cd ~/IOTstack
 2  IOTsatck 메뉴 실행하기

./menu.sh
 3  메뉴에서 docker 설치하기

Main Menu에서 첫 번째 항목인 Install Docker를 선택하여 실행합니다.

Install Docker 화면
 4  라즈베리 다시 시작하기

다음과 같이 Restart Required가 나타나면 <Yes>를 선택하여 라즈베리 파이를 다시 시작합니다.

Restart Required(Yes) 화면

라즈베리 파이가 다시 시작되면 PC와 접속이 끊어지므로 다음과 같은 메시지가 나타납니다. 확인 버튼을 누릅니다.

PuTTY Fatal Error 화면

잠시 후에 라즈베이 파이의 재기동이 완료되면 PC에서 PuTTY를 이용하여 라즈베리 파이에 다시 접속합니다.

 3  Home Assistant 설치하기

Network Manager 설치하기
이 작업은 유선랜으로 접속된 상태에서만 가능합니다.
다음 명령어로 Network Manger를 설치합니다.

sudo apt-get install network-manager apparmor-utils

실행중에 After this operation, xxx MB of additional disk space will be used.
Do you want to continue? [Y/n]
라는 질문이 나오면 Y를 입력합니다.

IOTstack 메뉴에서 홈어시스턴트(Hass.io) 설치하기
IOTstack 메뉴에서 홈어시스턴트(Hass.io)를 설치합니다.

 1  IOTsatck 실행 디렉토리로 이동하기

cd ~/IOTstack
 2  IOTsatck 메뉴 실행하기

./menu.sh
 3  메뉴에서 Install Hass.io 선택하기

Main Menu에서 Install Hass.io (Require Docker)를 선택하여 실행합니다.

Install Hass.io (Require Docker)을 선택한 화면
 4  Device Type 선택하기

설치할 라즈베리파이의 모델를 선택합니다.

Machine Type 화면
Do you want to proceed with overwriting the /etc/network/interfaces file? [N/y]라는 메시지가 나오면 답을 합니다. 여기서는 Y를 입력하였습니다.

 5  설치 완료후 접속하기

화면에 출력되는 정보에 따라 주소http://192.168.xxx.xxx:8123을 입력하여 홈어시스턴트에 접속합니다. 처음 접속 후 로그인 화면이 나타날 때까지는 시간이 걸립니다.

홈어시스턴트 설치 후 접속 안내 화면

 4  Home Assistant 초기 구성하기

Home Assistant 계정 만들기

주소http://192.168.xxx.xxx:8123을 입력하여 Home Assistant에 접속합니다. 처음 접속 후 로그인 화면이 나타날 때까지는 시간이 걸립니다.

Home Assistant 시작전 대기 화면

일정 시간이 지나면 계정 만들기 화면이 나옵니다.

Home Assistant 계정 만들기 화면

필수 정보를 입력합니다. 이름은 Home Assistant를 구분하기 위한 명칭입니다. 사용자 이름은 로그인 ID를 말합니다. 비밀번호와 비밀번호 확인을 입력한 후 계정 만들기 버튼을 누르면 초기 정보 설정 화면으로 연결됩니다.

초기 정보 설정하기

초기 설정 화면에는 여러 정보를 입력해야 하므로 한 화면을 세 부분으로 나누어서 설명합니다.

 1  Home Assistant 이름

화면의 첫 부분에 Home Assistant 이름을 입력합니다. 여기서는 나타나는 이름을 그대로 사용했습니다.

초기 설정 화면 1
 2  위치 지정하기

지도를 움직여서 마우스를 클릭하면 위치가 지정됩니다. 탐색을 눌러서 지정할 수도 있습니다.

초기 설정 화면 2
 3  기타 정보 지정하기

시간대, 고도, 단위를 지정합니다.

초기 설정 화면 2
다음을 누르면 통합 구성 요소를 확인할 수 있는 화면이 나옵니다.

통합 구성요소 확인하기

Home Assistant 에 통합이 가능한 기기들을 표시하는 화면이 나옵니다. 여기에는 본인이 설치한 기기가 나타납니다.

통합 구성 요소 확인 화면
완료를 누르면 초기 설정이 끝납니다.

맨 처음 나오는 Home Assistant 메뉴 화면

초기 설정이 끝나면 다음과 같은 Home Assistant 메뉴 화면이 나타납니다. 다음에 로그인하면 이 화면이 나타납니다.

Home Assistant 메뉴 화면

 5  Home Assistant의 설정을 바꿀 준비하기

add-on이란?
 1  add-on에 대하여

add-on은 Home Assitant의 기능을 확장하기 위하여 준비한 외부 프로그램입니다. Add on Store에서 원하는 add-on을 선택하여 몇 번의 클릭으로 설치할 수 있습니다.

 2  설치된 add-on 보기

좌측 메뉴 Superviser를 선택하고 Dashboard 탭을 누르면 add-on이 전혀 설치되어 있지 않음을 알 수 있습니다.

Supervosor ▶ Dashboard 화면
File Editor add-on 설치
 1  File Editor add-on에 대하여

Home Assistant의 설정 정보는 configuration.yaml이라는 파일에 보관되어 있습니다. 이 파일을 편집하기 위한 도구가 필요한데 File Editor라는 add-on을 사용하면 편합니다.

 2  File Editor add-on 설치하기

좌측 메뉴 Superviser를 선택하고 Add-on Store 탭을 누르면 설치할 수 있는 add-on이 모두 나타납니다. 여기서 File Editor 항목을 클릭합니다.

Supervosor ▶ Add-on Store 화면

File Editor 화면에서 INSTALL을 누르면 설치가 됩니다.

Supervosor ▶ Add-on Store ▶ File Editor : Info화면
File Editor add-on 설정하기
 1  설치된 File Editor 보기

설치된 File Editor화면은 다음과 같습니다.

설치된 File Editor 화면
 2  Documentation 확인하기

add-on이 설치되면 Documentation 탭을 눌러서 사용법을 확인합니다. 특히 Configuration 부분은 주의 깊게 읽고 다음 단계에서 그대로 적용해야 합니다.

Documentation 화면
 3  Configuration 수정하기

Configuration 내용을 수정하는 화면입니다. 여기서는 특별히 수정하지 않고 그대로 둡니다. 만약 수정한 내용이 있다면 SAVE를 눌러서 수정 내용을 보관합니다.

Configuration 화면
 4  File Editor add-on 시작하기

Info 탭에서 START를 누르면 add-on이 실행이 됩니다. 이후에 메뉴나 설치된 add-on 항목에서 File Editor를 선택하여 편집 작업을 할 수 있게 됩니다.

Info 탭에서 START 버튼이 나온 화면
 5  File Editor add-on이 시작된 화면

add-on이 시작되면 STOP, RESTART, OPEN WEB UI, UNINSTALL 버튼이 생깁니다. 이 버튼을 이용하여 add-on의 작동 상태를 바꿀 수 있습니다.

Show in sidebar 스위치를 활성화하면 File Editor add-on이 좌측 메뉴 항목으로 나타납니다. 이처럼 자주 사용하는 add-on은 메뉴에 표시하는 것이 좋습니다.

OPEN WEB UI를 클릭하면 편집기가 시작됩니다.

add-on이 실행된 후의 화면
File Editor 사용하기
 1  File Editor의 WEB UI 열기(방법1)

메뉴의 Supervisor를 선택하면 Dashboard 탭의 Add-ons 영역에 File Editor가 나타납니다. 여기서 File Editor를 선택한 후 OPEN WEB UI를 누르면 WEB UI 기능을 사용할 수 있습니다.

Supervisor의 Dashboard에 나타난 File Editor add-on 항목
 2  File Editor의 WEB UI 열기(방법2)

add-on 설정 화면에서 Show in sidebar가 활성화되어 있으면 메뉴에 항목으로 File Editor나타납니다. 이 File Editor 항목을 선택하면 WEB UI가 열립니다.

메뉴에 나타난 File Editor 항목
 3  열린 WEB UI 화면.

열린 File Editor의 WEB UI 화면
 4  파일을 선택하기

예를 들어 config/configuration.yaml 파일을 편집해 보도록 하겠습니다.

File Editor 영역의 왼쪽 위에 있는 폴더 아이콘( )을 클릭하면 config/ 폴더 아래의 파일 리스트가 나타납니다. 여기서 configuraton.yaml를 선택하면 편집 화면에 파일의 내용이 짙은 색으로 씌워져 보입니다.

confuguration.yam을 선택한 화면
 5  configuration.yaml 수정하기

짙은 색으로 씌워진 파일 부분을 클릭하면 파일 편집 모드로 바뀝니다. 편집 화면의 맨 아래 에 빈 줄을 입력해 보면 파일 보관 아이콘()이 나타납니다. 이 아이콘을 누르면 파일이 보관됩니다.

configuration.yaml 편집 화면

 6  IoT용 주요 소프트웨어 설치하기

IoT용 서버 기능을 수행하는 주요 소프트웨어는 다음과 같습니다. 이 소프트웨어들은 Home Assistant 의 add-on으로 준비되어 있으므로 간단하게 설치할 수 있습니다.

이름
기능과 역할
MosquittoMQTT 프로토콜을 지원하는 메시지 교환용 서버
Node-RED노드를 기본으로 하는 Low Code 개발 툴
IoT 디바이스간의 제어 흐름을 정하는 룰을 만들거나 시스템을 통제하는 대시보드를 구성할 수 있음
InfluxDB실시간 데이타베이스
Grafana데이터 소스(예를 들면 InfluxDB)의 정보를 그래프로 표시하는 툴

 7  안전하게 IoT 서버에 원격 접속하기

외부 인터넷에서 VPN을 이용하여 IoT 서버에 안전하게 접속하는 방법을 안내합니다.

여기에서 안내하는 방법 대신 동일한 기능의 Home Assistant의 add-on을 사용할 수도 있습니다. 이 때에는 중복 설치되지 않도록 주의하여야 합니다.

duckdns.org에서 도메인 설정하기 공유기에서 외부에 포트 열기 라즈베리 파이에 VPN 설치하기 PC에서 라즈베리 파이의 파일을 관리하기

Copyright © 2025 ·로그인