Home assistant system

Instalarea Home Assistant pe Ubuntu folosind Docker

Home Assistant este o platformă open-source pentru automatizarea locuinței, care îți permite să controlezi becuri, prize, senzori, termostate și multe alte dispozitive smart dintr-o singură interfață. Pe Ubuntu, cea mai flexibilă și ușor de întreținut variantă este instalarea lui Home Assistant Container cu ajutorul Docker. Această metodă este recomandată în locul instalării „clasice” în Python virtualenv, care este acum considerată învechită pentru producție.


1. De ce să folosești Docker pe Ubuntu?

Avantajele instalării Home Assistant într-un container Docker pe Ubuntu:

  • Separare clară între sistemul de operare și aplicație – mai ușor de backup, migrat sau refăcut.
  • Update-uri ușoare – actualizarea se reduce de obicei la schimbarea imaginii Docker și repornirea containerului.
  • Compatibilitate bună cu alte servicii
  • Scalabilitate – poți rula pe același server și alte aplicații (MQTT, Node-RED, Grafana etc.).

Important de știut: instalarea Home Assistant Container nu are sistemul de add-on-uri integrat pe care îl găsești în Home Assistant OS. Dacă vrei add-on-uri gestionate direct din interfață, cea mai simplă soluție este Home Assistant OS instalat direct pe hardware sau în VM.


2. Cerințe preliminare

2.1. Hardware / sistem

  • Un server sau PC cu Ubuntu 22.04 / 24.04 (Desktop sau Server).
  • Conexiune stabilă la rețea (ideal prin cablu Ethernet).
  • Acces ssh sau terminal local, cu utilizator care are drepturi sudo.
  • Recomandat: IP static sau rezervare DHCP pentru serverul Ubuntu.

2.2. Software necesar

  • Docker Engine instalat pe Ubuntu.
  • Opțional, dar recomandat: Docker Compose (pentru fișier docker-compose.yml sau compose.yml).

3. Instalarea Docker pe Ubuntu (pe scurt)

Poți urma ghidul oficial Docker pentru Ubuntu sau pașii rezumați mai jos. Dacă ai deja Docker instalat, poți să sari la secțiunea următoare.

sudo apt update
sudo apt install -y ca-certificates curl gnupg

# Adăugăm cheia GPG oficială Docker
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
  sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Adăugăm repository-ul Docker
echo \
  "deb [arch=$(dpkg --print-architecture) \
  signed-by=/etc/apt/keyrings/docker.gpg] \
  https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update

# Instalăm Docker Engine și pluginurile Compose
sudo apt install -y docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin

După instalare, este util să adaugi utilizatorul tău în grupul docker, pentru a nu mai folosi sudo la
fiecare comandă:

sudo usermod -aG docker $USER
# delogare + logare din nou pentru activarea grupului

4. Crearea structurii pentru Home Assistant

Vom crea un director separat în care păstrăm configurarea Home Assistant și fișierul de Compose. Exemplul de mai jos folosește directorul ~/homeassistant în home-ul utilizatorului curent.

mkdir -p ~/homeassistant
cd ~/homeassistant

În acest director vor fi create:

  • un folder config – unde Home Assistant își păstrează toate fișierele de configurare;
  • un fișier compose.yml (sau docker-compose.yml) cu serviciul Home Assistant.

5. Fișierul Docker Compose pentru Home Assistant

Creăm fișierul compose.yml (sau docker-compose.yml) cu conținutul de mai jos. Exemplul folosește imaginea oficială Home Assistant și modul de rețea host, astfel încât containerul să fie accesibil direct pe portul 8123 al serverului.

cd ~/homeassistant
nano compose.yml

Conținut recomandat:

services:
  homeassistant:
    container_name: homeassistant
    image: "ghcr.io/home-assistant/home-assistant:stable"
    volumes:
      - ./config:/config
      - /etc/localtime:/etc/localtime:ro
      - /run/dbus:/run/dbus:ro   # opțional, util pentru integrarea unor servicii de pe host
    restart: unless-stopped
    network_mode: host

Salvează fișierul și ieși din editor (Ctrl + O, Enter, apoi Ctrl + X în nano).


6. Pornirea Home Assistant în Docker

Din același director (~/homeassistant), pornește containerul:

cd ~/homeassistant
docker compose up -d
  • up -d pornește containerul în fundal (detached).
  • La prima pornire, imaginea va fi descărcată și poate dura câteva minute.

Poți verifica statusul containerului cu:

docker ps

Dacă vezi un container numit homeassistant în listă și status „Up”, totul este în regulă.


7. Accesarea interfeței Home Assistant

După câteva minute de la prima pornire, deschide un browser (Chrome, Firefox, Edge) și accesează:

  • http://IP-UL-SERVERULUI:8123 – de exemplu http://192.168.1.50:8123.

Dacă lucrezi direct pe mașina Ubuntu cu interfață grafică, poți încerca și http://localhost:8123.

Dacă totul a funcționat, vei vedea ecranul de Onboarding Home Assistant, unde:

  1. Îți creezi un cont de administrator (user + parolă).
  2. Setezi locația și fusul orar (pentru România: Europe/Bucharest).
  3. Alegi unități de măsură (°C, km/h etc.).
  4. Home Assistant încearcă să detecteze automat dispozitivele din rețea.
Home Assistant interface
Home Assistant interface

8. Cum oprești, pornești și actualizezi Home Assistant

8.1. Oprire și repornire container

cd ~/homeassistant

# Oprire
docker compose stop

# Pornire
docker compose start

# Restart rapid
docker compose restart

8.2. Actualizarea Home Assistant

Pentru update, tot ce trebuie să faci este să tragi ultima versiune a imaginii și să repornești containerul:

cd ~/homeassistant
docker compose pull
docker compose up -d

Configurațiile tale sunt păstrate în directorul ./config, deci nu se pierd în urma update-ului.


9. Limitări și particularități ale instalării pe Ubuntu

  • Instalarea Home Assistant Container pe Ubuntu nu include Supervisor și Add-ons. Dacă ai nevoie de add-on-uri integrate (de ex. Mosquitto MQTT, File Editor, Samba etc.), trebuie să folosești Home Assistant OS sau o instalare Supervised pe Debian (metodă avansată, acum marcată ca „deprecated” pentru instalări noi).
  • Poți rula manual servicii complementare (MQTT, Node-RED, InfluxDB, Grafana) în containere separate, în același fișier compose.yml, ceea ce îți oferă flexibilitate maximă.
  • Dacă ai device-uri USB (Zigbee, Z-Wave, serial etc.), va trebui să le expui în container (prin
    devices: în fișierul Compose sau folosind opțiunea --device pentru docker run).

10. Pași următori după instalare

  • Adaugă integrații pentru dispozitivele tale: Sonoff, Shelly, Tuya, Philips Hue, camere IP etc.
  • Configurează notificări (push pe telefon, email, Telegram, etc.).
  • Creează automatizări simple: aprinderea luminilor la apus, notificare la deschiderea ușii, control încălzire etc.
  • Organizează-ți dashboard-urile (Lovelace) pentru telefon, tabletă sau PC.

Home assistant system

Dacă folosești deja Ubuntu pentru alte servicii (server media, NAS, aplicații web), instalarea Home Assistant în Docker pe aceeași mașină este o soluție foarte eficientă și ușor de întreținut. Iar dacă pe viitor vei dori să migrezi către Home Assistant OS sau către alt hardware, va fi suficient să copiezi directorul config pe noua instalare.

Susține acest blog

Cumpărând de pe https://mag.automatic-house.ro/ro/ susții blogul meu, iar 10% din donații vor fi direcționate către Fundația Dăruiește Viață. Îți mulțumesc!

Mulțumesc pentru atenție! 

Pentru întrebări și/sau consultanță tehnică vă stau la dispoziție pe blog mai jos în secțiunea de comentarii sau pe email simedruflorin@automatic-house.ro.
O zi plăcută tuturor !

De Florin Simedru

Autor

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *


Perioada de verificare reCAPTCHA a expirat. Vă rugăm să reîncărcați pagina.