Ho sentim, el teu navegador no admet JavaScript!
Inicia sessió

Monitoratge d'energia autoallotjat amb Docker

Monitoratge d'energia autoallotjat amb Docker

Un sistema de monitoratge d'energia autoallotjat manté el servidor de monitoratge i les dades d'electricitat sota el vostre control. En lloc d'enviar cada lectura a un núvol públic, el comptador d'energia envia les dades a un contenidor Docker que s'executa en un servidor local, un NAS, una Raspberry Pi o un encaminador compatible.

IAMMETER-Docker ofereix un servidor local de monitoratge d'energia llest per utilitzar per al consum d'electricitat i els sistemes solars fotovoltaics. Pot recollir mesures, mostrar dades en temps real i històriques, exposar API i funcionar opcionalment com a registrador de dades sense connexió.

IAMMETER energy meter
        │
        │ Wi-Fi / local network
        ▼
IAMMETER-Docker
        │
        ├── Local web dashboard
        ├── Historical energy data
        ├── REST API
        ├── MQTT
        ├── CSV datalogger
        └── Optional forwarding

IAMMETER-Docker és una opció pràctica d'autoallotjament, però no reprodueix totes les funcions i informes d'IAMMETER-Cloud. Si encara esteu triant una arquitectura, compareu les opcions a la pàgina de solucions de monitoratge d'energia autoallotjat.

🎬 Mireu el vídeo tutorial d'IAMMETER-Docker

1. Quan hauríeu d'utilitzar un sistema de monitoratge d'energia autoallotjat?

IAMMETER-Docker és adequat quan voleu:

  • mantenir les dades d'energia en un servidor que gestioneu;
  • monitorar l'electricitat en una LAN sense dependre de l'accés a Internet;
  • desplegar un tauler local de monitoratge solar;
  • recollir dades en un lloc remot mitjançant un registrador de dades sense connexió;
  • accedir a les mesures mitjançant una API REST local o MQTT;
  • reenviar dades seleccionades a una altra plataforma;
  • crear un tauler privat o una integració a partir de les dades d'energia emmagatzemades.

Les instal·lacions típiques inclouen:

  • monitoratge de l'electricitat domèstica i del solar fotovoltaic;
  • tallers, oficines i petits locals comercials;
  • sistemes solars remots i sales d'equips;
  • entorns de desenvolupament i proves;
  • projectes on es requereix un camí de dades local.

Si només necessiteu lectures directes del comptador per a Home Assistant, Node-RED, un PLC o programari personalitzat, potser no cal desplegar un servidor complet. Consulteu les opcions d'integració local i autoallotjada abans de triar.

2. Què necessiteu

Abans del desplegament, prepareu:

  • un dispositiu que pugui executar Docker, com un servidor Linux, un NAS, una Raspberry Pi o un encaminador compatible;
  • emmagatzematge persistent per a la base de dades de l'aplicació;
  • el port TCP 5050 disponible per a l'aplicació web i l'API;
  • el port TCP 1883 si s'utilitzarà el servei MQTT integrat;
  • una adreça IP estable o una reserva DHCP per al host de Docker;
  • un comptador d'energia IAMMETER, o una altra font de dades que pugui enviar el format d'API admes.

El host de Docker i el comptador han de poder comunicar-se entre ells a través de la xarxa local. Per al funcionament sense connexió, no cal accés a Internet després d'haver instal·lat la imatge i el programari necessari.

3. Desplegueu IAMMETER-Docker

La versió actual a Docker Hub és IAMMETER-Docker V2.4.

3.1 Opció A: Docker run

Creeu un directori de treball i executeu el contenidor amb emmagatzematge persistent:

docker run -d \
  --name myiammeter \
  --restart always \
  -p 5050:5050 \
  -p 1883:1883 \
  -e TZ=Etc/UTC \
  -v "$PWD/data:/app/data" \
  iammeter/iammeter

Canvieu TZ=Etc/UTC a la zona horària correcta per al lloc de monitoratge. Els informes d'energia depenen de la data i l'hora locals, així que configureu-ho abans de recollir dades de producció.

3.2 Opció B: Docker Compose

Creeu compose.yaml:

services:
  iammeter:
    image: iammeter/iammeter
    container_name: myiammeter
    restart: always
    ports:
      - "5050:5050"
      - "1883:1883"
    environment:
      TZ: Etc/UTC
    volumes:
      - ./data:/app/data

Inicieu el servei:

docker compose up -d

Comproveu el seu estat:

docker compose ps
docker compose logs --tail=100 iammeter

3.3 Obriu el tauler local

Obriu l'adreça següent des d'un navegador a la mateixa xarxa:

http://<docker-host-ip>:5050

Credencials per defecte:

Username: testuser
Password: 123456

Canvieu la contrasenya per defecte immediatament. No exposeu el port 5050 ni el 1883 directament a Internet pública sense un tallafoc adequat, autenticació i un disseny de xarxa segur.

IAMMETER-Docker login

4. Configuració inicial

Després d'iniciar sessió:

  1. Creeu un Place per a la llar, el lloc solar o la instal·lació monitorada.
  2. Afegiu un Meter.
  3. Introduïu el número de sèrie (SN) del comptador.
  4. Seleccioneu el tipus de comptador correcte: monofàsic o trifàsic.
  5. Assigneu cada fase o canal com a Grid, Inverter o Load.
  6. Confirmeu la zona horària del lloc i l'estructura de mesures abans d'avaluar els informes.

Configure a meter in IAMMETER-Docker

L'assignació correcta dels canals és especialment important per al monitoratge solar. El sistema ha de saber quina mesura representa la xarxa, l'inversor o la càrrega abans de poder mostrar resultats significatius de flux d'energia.

5. Connecteu un comptador d'energia IAMMETER

Els comptadors IAMMETER poden enviar dades directament al servidor Docker local.

A la WebUI del comptador, configureu la càrrega HTTP de tercers i utilitzeu l'adreça del host de Docker:

<docker-host-ip>:5050/api/v1/sensor/uploadsensor

L'adreça IP del host de Docker ha de ser accessible des de la xarxa Wi-Fi del comptador. Utilitzeu el mateix SN del comptador que es va afegir a IAMMETER-Docker.

Configure HTTP upload to IAMMETER-Docker

Després de desar la configuració del comptador:

  1. espereu la primera càrrega de dades;
  2. confirmeu que el comptador apareix en línia a IAMMETER-Docker;
  3. compareu els valors de tensió, potència i energia amb les dades locals del comptador;
  4. verifiqueu la direcció i l'assignació dels canals abans de dependre dels càlculs solars o d'importació/exportació.

Utilitzeu IAMMETER-Cloud alhora

IAMMETER-Docker pot reenviar opcionalment les dades del comptador a IAMMETER-Cloud. Activeu el reenviament només quan vulgueu tenir alhora emmagatzematge local i serveis d'IAMMETER-Cloud.

Forward local data to IAMMETER-Cloud

Per a una instal·lació sense connexió o independent del núvol, deixeu el reenviament al núvol desactivat.

6. Envieu dades des d'un altre dispositiu o aplicació

IAMMETER-Docker també pot rebre dades d'energia admeses mitjançant la seva API REST. Això és útil per a simuladors, passarel·les o aplicacions de clients que no utilitzen un comptador IAMMETER.

Creeu un comptador amb un SN personalitzat i utilitzeu aquest mateix SN a cada petició d'API.

La documentació interactiva de l'API està disponible al servidor local:

http://<docker-host-ip>:5050/docs

IAMMETER-Docker API documentation

Test an IAMMETER-Docker API request

Proveu primer l'API en un comptador que no sigui de producció. Mantingueu coherents el SN, el nombre de fases, l'ordre dels camps i les unitats perquè les dades històriques continuïn sent útils.

7. Executeu un registrador de dades d'energia sense connexió

IAMMETER-Docker V2.4 pot desar dades en CSV quan es munta un directori de registrador de dades. Això és útil per a un lloc solar remot, una fàbrica o una sala d'equips sense una connexió a Internet fiable.

Docker run amb emmagatzematge del registrador de dades

docker run -d \
  --name myiammeter \
  --restart always \
  -p 5050:5050 \
  -p 1883:1883 \
  -e TZ=Etc/UTC \
  -v "$PWD/data:/app/data" \
  -v "$PWD/datalogger:/app/datalogger" \
  iammeter/iammeter

Per a Docker Compose, afegiu aquest volum:

volumes:
  - ./data:/app/data
  - ./datalogger:/app/datalogger

Obriu la pàgina del registrador de dades a:

http://<docker-host-ip>:5050/datalogger

La pàgina del registrador de dades utilitza inicialment:

Username: admin
Password: admin

Canvieu aquesta contrasenya com a part del desplegament. Per al flux de treball complet basat en encaminador i exportació CSV, vegeu Registrador de dades d'energia sense connexió amb IAMMETER-Docker.

8. MQTT i altres funcions avançades

El port 1883 l'utilitza el servei MQTT d'IAMMETER-Docker. Un comptador o una altra aplicació pot publicar dades de mesura admeses a IAMMETER-Docker, i els clients MQTT poden subscriure's a valors en temps real.

IAMMETER-Docker també admet funcions com ara:

  • MySQL en lloc de la base de dades local per defecte per a conjunts de dades més grans;
  • publicació i subscripció MQTT;
  • reenviament a PVOutput;
  • dades d'energia Tasmota compatibles;
  • alarmes en temps real i escenaris de registrador de dades d'un segon.

Aquestes funcions es mantenen deliberadament fora de la ruta bàsica de desplegament. Configureu i proveu primer el contenidor principal i, després, continueu amb la guia avançada d'IAMMETER-Docker.

9. Feu còpies de seguretat de les vostres dades d'energia

El volum /app/data conté les dades persistents de l'aplicació. Feu còpies de seguretat regulars del directori de l'host corresponent.

Un procés bàsic segur és:

  1. atureu o pauseu les escriptures al contenidor;
  2. copieu el directori data muntat complet a l'emmagatzematge de còpies de seguretat;
  3. incloeu el directori datalogger quan el registre CSV estigui activat;
  4. conserveu més d'una generació de còpies de seguretat;
  5. proveu la restauració en un contenidor separat abans de dependre del pla de còpies de seguretat.

No tracteu el sistema de fitxers del contenidor com a emmagatzematge permanent. Si /app/data no està muntat, en eliminar el contenidor també es pot eliminar la base de dades de monitoratge.

10. Actualitzeu IAMMETER-Docker

Abans d'actualitzar, feu una còpia de seguretat del directori de dades persistent.

Per a Docker Compose:

docker compose pull
docker compose up -d
docker compose logs --tail=100 iammeter

Per a un contenidor creat amb docker run:

  1. anoteu els ports, la zona horària i els volums muntats existents;
  2. baixeu la nova imatge;
  3. atureu i elimineu el contenidor antic;
  4. torneu a crear el contenidor amb el mateix volum persistent;
  5. verifiqueu l'inici de sessió, l'estat del comptador i les dades històriques.
docker pull iammeter/iammeter
docker stop myiammeter
docker rm myiammeter

Després, repetiu la comanda docker run original. Eliminar un contenidor només és segur quan les dades de l'aplicació s'han emmagatzemat en un directori de l'host correctament muntat i amb còpia de seguretat.

11. Resolució de problemes

La pàgina web no s'obre

  • Confirmeu que el contenidor s'està executant amb docker ps o docker compose ps.
  • Comproveu si el port 5050 de l'host ja està en ús.
  • Reviseu els registres del contenidor.
  • Confirmeu que el tallafoc permet l'accés des de la xarxa local.

El comptador no apareix en línia

  • Confirmeu que el comptador pot arribar a l'adreça IP del host de Docker.
  • Comproveu l'URL i el port de càrrega.
  • Confirmeu que el SN a IAMMETER-Docker coincideix amb el SN del comptador.
  • Eviteu utilitzar localhost com a adreça del servidor al comptador; es refereix al mateix comptador, no al host de Docker.
  • Confirmeu que l'aïllament de clients o una xarxa Wi-Fi de convidats no està bloquejant el trànsit LAN.

Les dades solars semblen incorrectes

  • Verifiqueu la direcció del CT i el cablejat.
  • Confirmeu quin canal està assignat a Grid i quin a Inverter.
  • Comproveu el signe de la potència activa durant la importació i l'exportació.
  • Confirmeu la zona horària abans de comparar els totals d'energia diaris.

Les dades desapareixen després de recrear el contenidor

  • Confirmeu que /app/data es va muntar en un directori persistent de l'host.
  • Comproveu els permisos del directori.
  • Restaureu la darrera còpia de seguretat verificada si el volum original no està disponible.

12. IAMMETER-Docker, IAMMETER-Cloud o un sistema personalitzat?

Opció Millor per a Ubicació de les dades Esforç de configuració Principals contrapartides
IAMMETER-Docker Un servidor de monitoratge local ja preparat El vostre host Docker Baix a mitjà Menys funcions de núvol gestionades
IAMMETER-Cloud Monitoratge, informes i accés remot ja preparats IAMMETER-Cloud Baix Utilitza un servei al núvol allotjat
Home Assistant / Node-RED Entitats de casa intel·ligent i automatització personalitzada La vostra pròpia plataforma Mitjà Vós dissenyeu el tauler i els fluxos de treball
Servidor personalitzat Un producte, EMS o canalització de dades especialitzada La vostra infraestructura Alt Vós desenvolupeu i manteniu el sistema

Continueu amb:

13. Llista de verificació del desplegament

  • El host de Docker té una adreça LAN estable.
  • /app/data està muntat en un emmagatzematge persistent.
  • La zona horària coincideix amb el lloc de monitoratge.
  • S'han canviat les contrasenyes per defecte.
  • Els ports 5050 i 1883 no estan exposats innecessàriament a Internet.
  • El SN del comptador i les assignacions de canals són correctes.
  • S'ha verificat la càrrega local amb mesures en temps real.
  • El reenviament al núvol està activat només quan cal.
  • S'han provat els procediments de còpia de seguretat i actualització.
  • El volum del registrador de dades està muntat si cal exportar a CSV.

Darrera actualització: 17 de juliol de 2026.

Amunt