Skip to content

Konfiguration

Georg Ledermann edited this page Jul 15, 2024 · 1 revision

Konfiguration über Umgebungsvariablen

SOLECTRUS wird über Umgebungsvariablen konfiguriert. Diese stehen in der Datei .env im gleichen Verzeichnis wie die compose.yml. Jeder Container hat seine eigenen Variablen, mache Variablen werden von verschiedenen Containern benutzt.

Es ist zu beachten, dass die Umgebungsvariablen nicht nur in der .env definiert werden, sondern auch in der compose.yml aufgeführt werden (als Auflistung im Abschnitt environment des Services shelly-collector). Andernfalls sind sie für den Collector nicht erreichbar.

Nach einer Bearbeitung von .env oder compose.yml müssen die Container neu erstellt werden, um die Änderungen zu übernehmen. Dies geschieht mit dem Befehl docker compose up -d (bei älteren Docker-Versionen docker-compose up -d, also mit Bindestrich).

Es folgt eine Auflistung der für den Shelly-Collector definierten Umgebungsvariablen.

Zugang zum Shelly

  • SHELLY_HOST

    Hostname des Shelly. Dies ist üblicherweise die IP-Adresse, kann aber auch eine lokale Domain sein. Darf kein http:// oder https:// enthalten!

  • SHELLY_INTERVAL (standardmäßig 5)

    Wie oft soll der aktuelle Messwert abgerufen werden? Der Standardwert von 5 ist ein guter Kompromiss, von dem nur in begründeten Fällen abgewichen werden sollte.

Zugriff auf InfluxDB

  • INFLUX_HOST

    Hostname des InfluxDB-Servers. Im Normalfall, wenn InfluxDB im gleichen Docker-Netzwerk läuft, ist das der Name des Containers (z.B. influxdb). Es kann aber auch ein externer InfluxDB-Server sein, z.B. influxdb.example.com.

  • INFLUX_SCHEMA (standardmäßig http)

    Schema für die Verbindung zu InfluxDB. Bei Verwendung einer externen InfluxDB, die über TLS abgesichert ist, muss dieser Wert auf https gesetzt werden.

  • INFLUX_PORT (standardmäßig 8086)

    Port für die Verbindung zu InfluxDB. Bei Verwendung einer externen InfluxDB könnte eine Anpassung erforderlich sein, z.B. auf 443.

  • INFLUX_ORG

    Organisation in InfluxDB, in der die Daten gespeichert werden sollen.

  • INFLUX_BUCKET

    Bucket in InfluxDB, in der die Daten gespeichert werden sollen.

  • INFLUX_TOKEN

    Token für den Zugriff auf InfluxDB. Dieser Token muss in InfluxDB erstellt werden und die Berechtigung haben, Daten in den angegebenen Bucket zu schreiben.

  • INFLUX_MEASUREMENT

    Name des Measurements, das die Messwerte aufnehmen soll. Es werden immer die Fields power (Stromverbrauch, in Watt), temp (Temperatur, in °C) und response_duration (Dauer der Antwort, in ms) geschrieben.

Clone this wiki locally