Passa al contenuto principale

Aggiungi un nodo worker

Il worker è l'unico nodo di Superhome che gira come container Docker normale (il master gira come app HAOS). È tipicamente un computer piccolo e separato, come un Raspberry Pi 5 o un mini-PC. Va bene qualsiasi macchina in grado di eseguire Docker.

La fotocamera si configura sul master

Non imposti l'URL della fotocamera sul worker. Il worker legge il suo rtsp_url e le altre impostazioni dalla configurazione dell'app Superhome in Home Assistant. Ricordati di impostare lì inference_mode su master-worker (vedi Cluster master-worker).

Prerequisito: Docker

Il worker gira come container Docker, quindi sulla macchina worker serve Docker (con il plugin Compose) installato. Verifica con docker --version e docker compose version.

Se non è ancora installato:

  • Linux (Pi 5, Debian/Ubuntu, ecc.): lo script ufficiale installa Docker + Compose in un colpo solo — curl -fsSL https://get.docker.com | sh. Vedi docs.docker.com/engine/install.
  • Windows / macOS: installa Docker Desktop, che include Compose.
Usare Docker senza sudo (Linux)

Dopo l'installazione, aggiungi il tuo utente al gruppo docker così da non dover usare sudo: sudo usermod -aG docker $USER, poi esci e rientra nella sessione.

Passaggi

1. Genera un PIN di enrollment sul master

Apri il pannello Superhome nel menu laterale di Home Assistant (è l'Hub), vai alla sezione Cluster e clicca Genera PIN. Viene visualizzato un PIN a 6 cifre, insieme a una breve impronta (fingerprint) del master. Il PIN è monouso e scade automaticamente dopo poco tempo, quindi esegui questo passo subito prima di avviare il worker.

2. Avvia il container worker

Sulla macchina worker, crea un docker-compose.yml:

services:
superhome-worker:
image: ghcr.io/superhome-vision/superhome-worker:latest
ports:
- "8765:8765"
restart: unless-stopped
user: "1000:1000"
cap_drop:
- ALL
environment:
SUPERHOME_ROLE: worker
SUPERHOME_MASTER_HOST: "192.168.1.X:8765" # IP del tuo host HA, poi :8765 (vedi nota sotto)
SUPERHOME_ENROLLMENT_PIN: "123456" # PIN dal passaggio 1
SUPERHOME_MASTER_FINGERPRINT: "a1b2c3d4" # fingerprint mostrato accanto al PIN
volumes:
- superhome-worker-data:/data # dati persistenti del worker
- /etc/machine-id:/etc/machine-id:ro

volumes:
superhome-worker-data:

Avvialo:

docker compose up -d
Imposta correttamente SUPERHOME_MASTER_HOST

Usa la forma <IP_HA>:8765 (es. 192.168.1.50:8765):

  • <IP_HA> — l'indirizzo IP del tuo host Home Assistant, senza http://, https:// né slash finale.
  • :8765 — la porta di Superhome, non quella di Home Assistant (8123). Lasciala su 8765.

3. Approva il worker sul master

Dopo che il worker si avvia e si registra, appare nell'Hub del master → Cluster. Approvalo lì. Un worker appena registrato resta inattivo finché non lo approvi.

4. Riavvia il worker

Una volta approvato, riavvia il container worker così che riceva le sue credenziali e la sua configurazione:

docker compose restart

5. Verifica

Nell'Hub del master → Cluster, il worker dovrebbe ora risultare connesso. Il PIN è monouso e non è più valido una volta completato l'enrollment.

Nessun PIN dopo un riavvio

Riavviare o aggiornare il container worker non richiede un nuovo PIN; si riconnette da solo. Ti serve un nuovo PIN solo se ricrei il worker da zero.