SCOPI DELLA GUIDA:
CONCETTI AFFRONTATI:
|
COMPONENTI SOFTWARE UTILIZZATE:
PREREQUISITI:
DISPOSITIVI FISICI UTILIZZATI: |
GUIDA MAGGIORMENTE INDICATA PER: |
|
Note e disclaimer
|
|
Revisione guida: 2.0 |
😊 QUESTA GUIDA È PARTE DEL NOSTRO PERCORSO GUIDATO ALL’INSTALLAZIONE E CONFIGURAZIONE
di HOME ASSISTANT su RASPBERRY PI.
Abstract
Come spiegato in altre schede, Home Assistant è il uno tra gli HUB personali gratuiti ideali per realizzare una propria domotica personale in modo organico e funzionale. Questo cruciale componente software ha la possibilità di essere installato su molti sistemi e in modalità diverse: su Raspberry Pi la modalità solitamente più caldeggiata dagli sviluppatori è la modalità “HASSIO”, ovvero una modalità sì completamente automatica, la quale prevede però di dedicare il Raspberry Pi all’uso esclusivo di Home Assistant, chiudendo di fatto ad eventuali altre funzionalità. Questa modalità è descritta in questa guida specifica.
Purtroppo la distribuzione HASSIO ha un rovescio della medaglia, ovvero le basse prestazioni a causa dell’inutile spreco di risorse previsto, dato che la componente cardinale (che alla fine è l’unica che interessa all’utente), ovvero Home Assistant Core, in questo ambito viene eseguito in un container di virtualizzazione e viene affiancato da tanti altri container quanti sono gli addon (imprescindibili come di altro tipo) che vengono installati tramite un ulteriore strato di gestione, ovvero il cosiddetto “Supervisor”. Tutta questa stratificazione affossa le prestazioni.
Non a caso, il nostro consiglio è quasi sempre quello di adottare Home Assistant Core installato da se stante come applicativo su Raspbian (oppure su altri sistemi operativi, come Windows, Apple macOS o altri), modalità solitamente adottata da chi usa Raspberry e vuole dotarsi di Home Assistant. Un’alterativa leggermente semplificata consente di isolare totalmente l’esecuzione di Home Assistant Core dal sistema operativo senza per questo adottare HASSIO: è il caso descritto dalla presente guida, la quale illustra l’installazione e il funzionamento di Home Assistant Core su un Raspberry Pi precedentemente installato e configurato con sistema operativo Raspbian ma non come applicativo ma come container eseguito in modo isolato tramite Docker.
Procedimento
- Assunti
- Installare Docker
- Istanziare Home Assistant Core su Docker
- Primo accesso su Home Assistant
- Accesso ai log (del container @Docker)
- Collegamento SSH
- Rifinitura
- Aggiornamento dell’HUB
Assunti
Questa guida è dedicata a chi abbia già un Raspberry in uso con sistema operativo Raspbian. Per coloro che non abbiano ancora provveduto e si trovino ad avere un Raspberry nuovo, magari acquistato appositamente per realizzare la propria domotica, allora questo passo della guida va smarcato seguendo prima un’altra guida, che spiega passo passo come configurare il sistema operativo Raspbian.
La guida da seguire:
- per chi abbia a disposizione una tastiera e un mouse USB, è questa;
- per chi non li abbia, è quest’altra.
Una volta terminata la configurazione di Raspbian (inclusa la possibilità di collegarvisi tramite SSH) è possibile procedere nella presente guida.
Installare Docker
Installare Docker su Raspberry Pi dotato di sistema operativo Raspbian è piuttosto semplice, esiste una procedura completamente automatica e una manuale. Entrambe le procedure sono illustrate in dettaglio in questa breve guida.
Se si ha già provveduto all’installazione di Docker, va da sé che questo passaggio possa essere saltato.
Istanziare Core su Docker
Una volta installato Docker è dunque il momento di installare (o meglio, “istanziarvi sopra”) Home Assistant Core.
In ambito Docker, l’istanziamento dell’applicazione può essere effettuato tramite esecuzione di un comando manuale (più immediato) oppure tramite una configurazione del tool di gestione Docker Compose, approccio inizialmente più ostico ma che consigliamo per tutta una serie di motivi. Entrambe le scelte sono valide, ma in prospettiva (specie in ottica di aggiornamento) imparare ad usare Docker Compose è altamente consigliato.
Prima di instanziare Home Assistant, indipendentemente dalla modalità, è necessario creare una cartella la quale conterrà la configurazione dell’HUB:
sudo mkdir -p /home/homeassistant/.homeassistant
Tramite comando “docker run”
Istanziamo dunque Home Assistant Core su Docker tramite il comando:
sudo docker run --init -d --name="home-assistant" -e "TZ=Europe/Rome" -v /home/homeassistant/.homeassistant:/config --net=host --restart unless-stopped homeassistant/raspberrypiX-homeassistant:stable
Dove la X nel nome dell’immagine (homeassistant/raspberrypiX-homeassistant:stable) andrà modificata indicando al suo posto 3 o 4 in base al modello di Raspberry Pi in uso.
Lanciato il comando, attenderne il completamento. Ci potrebbe volere un po’.
N.b. La procedura scaricherà e avvierà in background un container chiamato home-assistant al quale verrà passati parametri come il fuso orario del sistema e la coordinata della directory prima creata, la quale verrà adottata come /config all’interno del container quale directory contenente la configurazione dell’HUB. Il comando, inoltre, comunica al container di avviarsi in automatico quando e se verrà riavviato il servizio Docker. |
Tramite Docker Compose
Se astutamente si sceglie di utilizzare Docker Compose, allora è semplicemente necessario aggiungere al proprio file docker-compose.yaml la seguente configurazione (sotto il bocco services):
home-assistant:
container_name: home-assistant
image: homeassistant/raspberrypiX-homeassistant:stable
volumes:
- /home/homeassistant/.homeassistant:/config
environment:
- TZ=Europe/Rome
network_mode: host
restart: unless-stopped
Dove la X nel nome dell’immagine (homeassistant/raspberrypiX-homeassistant:stable) andrà modificata indicando al suo posto 3 o 4 in base al modello di Raspberry Pi in uso.
Una volta salvato il file docker-compose.yaml, eseguire il comando:
docker-compose up -d
il quale provvederà a istanziare il container.
Lanciato il comando, attendere il completamente del primo avvio. Ci potrebbe volere un po’: per leggere in tempo reale i log e verificare quindi cosa stia succedendo all’interno del container, eseguire il comando:
sudo docker container logs home-assistant -f
N.b. La procedura scaricherà e avvierà in background un container chiamato home-assistant al quale verrà passati parametri come il fuso orario del sistema e la coordinata della directory prima creata, la quale verrà adottata come /config all’interno del container quale directory contenente la configurazione dell’HUB. Il comando, inoltre, comunica al container di avviarsi in automatico quando e se verrà riavviato il servizio Docker. |
Primo accesso su Home Assistant
Ora il container Docker appena installato avvierà la fase automatica di prima installazione interna di Home Assistant Core, la quale impiegherà qualche minuto (anche una ventina). La procedura iniziale sarà di fatto completa quando ci si riuscirà a collegare, tramite il proprio browser sul computer di appoggio, al seguente indirizzo:
http://homeassistant.local:8123
dovrebbe apparire una schermata di questo tipo:
N.b. In caso non ci si riesca a collegare, assicurarsi che sul proprio router sia attivo il multicast DNS (mDNS). Se non lo è, la risoluzione del nome “homeassistant.local” non va a buon fine e il browser non riesce a collegarsi: la soluzione, per l’appunto, è quella di attivare il multicast (che provvede a questa cosa). Alternativamente è comunque sempre possibile collegarsi all’indirizzo diretto, ovvero http://INDIRIZZO_IP_DEL_RASPBERRY:8123, dove l’indirizzo IP è quello assegnato dal router al Raspberry Pi.
Per scoprire l’IP del Raspberry sarà sufficiente eseguire il comando: ifconfig
il quale elencherà gli IP associati al raspberry: L’indirizzo IP è solitamente indicato a destra della dicitura “inet” e, solitamente, fa parte della subnet 192.168.0.0/16. http://INDIRIZZO_IP_DEL_RASPBERRY:8123 |
Al termine del completamento dell’installazione dovrebbe apparire un sito analogo a questo:

Complimenti! Home Assistant è in esecuzione.
Collegamento SSH
Dato che il container rappresenta esso stesso un host (sebbene virutale) è possibile collegarsi in SSH su di esso. Per farlo, sempre da terminale, eseguire questo comando:
sudo docker exec -it home-assistant sh
Si otterrà così accesso alla cartella di configurazione dell’HUB (la quale corrisponde, come contenuti, alla cartella creata prima). Per uscire, e quindi tornare all’ambiente Raspbian, usare:
exit
Accesso ai log
A prescindere dai log propri dell’HUB, è possibile ovviamente consultare real-time i log del container Home Assistant Core in esecuzione su Docker, a sua volta in esecuzione su Raspbian.
Il comando – ovviamente dal terminale di Raspbian – è il seguente:
sudo docker logs home-assistant
Rifinitura
Rimane sempre utile consultare la scheda che illustra tutte le cose da fare dopo questa prima installazione.
Aggiornamento
Tutte le modalità di aggiornamento per Home Assistant Core sono riassunte su questa scheda ad hoc:
![]() |
ATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica a Home Assistant, per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti. |
