Zum Inhalt springen

Konfiguration des Tibber-Collectors

Der Tibber-Collector wird üblicherweise in die Gesamtkonfiguration von SOLECTRUS integriert, d.h. die bestehenden Dateien compose.yaml und .env sind zu erweitern.

In der compose.yaml wird ein neuer Service namens tibber-collector hinzugefügt. Dieser sollte so aussehen:

services:
# ...
tibber-collector:
image: ghcr.io/solectrus/tibber-collector:latest
environment:
- TZ
- TIBBER_TOKEN
- TIBBER_INTERVAL
- INFLUX_HOST
- INFLUX_SCHEMA
- INFLUX_PORT
- INFLUX_TOKEN=${INFLUX_TOKEN_WRITE}
- INFLUX_ORG
- INFLUX_BUCKET
- INFLUX_MEASUREMENT=${INFLUX_MEASUREMENT_PRICES}
logging:
driver: 'json-file'
options:
max-size: 10m
max-file: '3'
restart: unless-stopped
depends_on:
influxdb:
condition: service_healthy
links:
- influxdb
labels:
- com.centurylinklabs.watchtower.scope=solectrus
# ...

Access Token von Tibber, erforderlich für den Zugriff auf die Tibber-API. Dieses kann auf der Developer-Website von Tibber erstellt werden.

Beispiel
TIBBER_TOKEN=3A77EECF61BD445F47241A5A36202185C35AF3AF58609E19B53F3A8872AD7BE1-1

Intervall, in dem die Preise von Tibber abgefragt werden sollen, in Sekunden.

Beispiel
TIBBER_INTERVAL=7200

Zeitzone gemäß Liste

Beispiel
TZ=Europe/Rome

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

Beispiel
INFLUX_HOST=influxdb

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

Beispiel
INFLUX_SCHEMA=https

Port für die Verbindung zu InfluxDB. Bei Verwendung einer externen, per TLS abgesicherten InfluxDB kann z.B. 443 eingestellt werden.

Beispiel
INFLUX_PORT=443

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

Das Token kann manuell in InfluxDB erstellt werden, alternativ kann aber auch das INFLUX_ADMIN_TOKEN verwendet werden.

Beispiel
INFLUX_TOKEN=my-super-secret-admin-token

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

Beispiel
INFLUX_ORG=solectrus

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

Beispiel
INFLUX_BUCKET=solectrus

Name des Measurements in InfluxDB, das die Messwerte aufnehmen soll.

Beispiel
INFLUX_MEASUREMENT=prices