SCOPI DELLA GUIDA:
CONCETTI AFFRONTATI:
|
COMPONENTI SOFTWARE UTILIZZATE:
PREREQUISITI:
DISPOSITIVI FISICI UTILIZZATI: |
GUIDA DEDICATA A utenti: |
|
NOTE E DISCLAIMER
|
|
Revisione guida: 1.1 |
Abstract
Per qualsiasi implementazione per la propria domotica personale che preveda l’uso del protocollo Message Queue Telemetry Transport (MQTT), è necessario che sulla rete sia disponibile un broker MQTT, ovvero un “instradatore” dei messaggi generati tramite questo protocollo. In questa guida affronteremo la procedura di installazione su Linux Debian di Eclipse Mosquitto, uno dei broker opensource più diffusi.
In questa guida utilizzeremo l’approccio che prevede di adottare un pratico container Docker, il che consente di isolare i processi del server, di essere facilmente aggiornato, gestito e molto altro. Solitamente questo approccio viene seguito da chi preferisce utilizzare questo tipo di astrazione piuttosto che la via più tradizionale che ne prevede l’installazione come servizio del sistema operativo.
Il tutto, a bordo di Sonoff iHost, tramite il motore Docker che esso ospita.
Si parte
Assunti
Si assume che Sonoff iHost sia già operativo, connesso alla rete LAN e, di riflesso, a Internet, e che disponga dell’ultima versione fimware disponibile.
Altresì, si assume che sia stata installata a bordo e formattata una microSD, la quale ospiterà non solo Mosquitto stesso, ma anche i contenuti delle applicazioni che si andranno, nel tempo, a configurare presso iHost. La presente guida è in italiano, quindi si assume di aver installato su iHost un pacchetto linguistico in lingua italiana, per esempio il nostro.
Si assume infine di aver implementato FileBrowser, il quale verrà riconifigurato al fine di modificare i file di configurazione di Mosquitto.
Creazione volume
Prima cosa da fare è creare un volume logico allo scopo di ospitare i file di Mosquitto (database e altro).
Da interfaccia web di sonoff iHost (solitamente raggiungibile via LAN all’indirizzo http://ihost.local), recarsi alla voce di menu “Docker” > “Volume” e poi cliccare su “Crea volume“.
Creare tre distinti volumi così chiamati:
- mosquitto_config
- mosquitto_data
- mosquitto_log
e clicchiamo, per ogni ripetizione, su “Conferma” per crearli.
Attivare accesso FileBrowser
Prima di procedere oltre, è necessario far sì che FileBrowser (il quale, arrivati sin qui, dovrebbe già essere operativo) abbia accesso al volume “config” di Mosquitto, così da poter effettuare modifiche alla sua configurazione.
Per farlo, modificare la configurazione di FileBrowser e aggiungere il volume “mosquitto_config” alla sua configurazione.
Configurazione
A questo punto, tramite FileBrowser (accedendo tramite la sua interfaccia) recarsi presso il folder “mosquitto_config” e creare un file chiamato mosquitto.conf.
Aprilo e copiarvi la seguente configurazione:
persistence true
persistence_location /mosquitto/data
log_dest file /mosquitto/log/mosquitto.log
log_dest stdout
listener 1883
allow_anonymous true
salvare e uscire.
Istanziare Mosquitto
Arrivati a questo punto è possibile provvedere all’instanziamento di Moquitto, il quale viene eseguito come container Docker tramite istanza specifica.
Recarsi dunque alla voce “Docker” > “Lista degli Add-on” e poi cliccare su “Aggiungi Add-on“.
Nella buca di ricerca inserire “mosquitto“, poi cliccare sulla lente d’ingrandimento:
selezionare “eclipse-mosquitto“, poi cliccare su “Aggiungi …“.
Al termine si rientrerà sulla finestra principale degli Add-on inclusi su Sonoff iHost; a questo punto cliccare su “Installare” sul nuovo box dedicato a Eclipse Mosquitto.
Attendere il tempo del download dell’immagine di FileBrowser dal repository ufficiale di Docker, poi procedere oltre.
Avviare il container
Al termine, sempre presso il box di FileBrowser, cliccare su “Avvia“.
Apparirà un box di configurazione, il quale va configurato come segue:
- Rete: bridge;
- Porta:
- Porta Host: 1884 (o una a piacere, ma non la 1883, che è in uso interno a iHost)
- Porta Add-on: 1883
- Volume:
- per “Volume dell’host”, selezionare quello precedemente creato, ovvero “mosquitto_config” e per “Volume dell’Add-on”, impostare “/mosquitto/config“;
- per “Volume dell’host”, selezionare quello precedemente creato, ovvero “mosquitto_data” e per “Volume dell’Add-on”, impostare “/mosquitto/data“;
- per “Volume dell’host”, selezionare quello precedemente creato, ovvero “mosquitto_log” e per “Volume dell’Add-on”, impostare “/mosquitto/log“.
Riportiamo l’esempio:
Al termine della configurazione, cliccare su “Avvia” per avviare il container Docker di Mosquitto.
Uso
A questo punto il broker MQTT Eclipse Mosquitto sarà in esecuzione su Sonoff iHost, pronto a ricevere e riconsegnale comandi e telemetrie dai componenti dotati di supporto MQTT presenti sulla rete.
Ivi incluso Home Assistant (inteso come MQTT client), al quale abbiamo dedicato una guida ad hoc.
Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa. |