Zum Inhalt springen

Docker

Der LxLogger steht als Multi-Arch-Image (amd64 + arm64) zur Verfügung:

ghcr.io/6fdigital/lxlogger:latest

Du benötigst:

Lege dazu auf dem Host ein Verzeichnis an, das Konfiguration, Lizenz und das persistente Datenverzeichnis aufnimmt:

Terminal-Fenster
mkdir -p ~/lxlogger/data
# lxlogger.toml und license in ~/lxlogger ablegen
Terminal-Fenster
docker run -d \
--name lxlogger \
-e LXL_MINISERVER_TIMEZONE=Europe/Berlin \
-v ~/lxlogger/lxlogger.toml:/etc/lxlogger/lxlogger.toml:ro \
-v ~/lxlogger/license:/etc/lxlogger/license:ro \
-v ~/lxlogger/data:/var/lib/lxlogger \
ghcr.io/6fdigital/lxlogger:latest up

Der Miniserver speichert seine Statistiken in Ortszeit, ohne Angabe der Zeitzone. lxlogger import liest sie in der Zeitzone aus LXL_MINISERVER_TIMEZONE bzw. [miniserver] timezone.

Ab v1.2.1 setzt das Image LXL_MINISERVER_TIMEZONE=Europe/Berlin als Standard. Das passt für Deutschland, Österreich und die Schweiz. Steht dein Miniserver in einer anderen Zeitzone, überschreibe den Wert mit -e LXL_MINISERVER_TIMEZONE=<Zone>, z. B. Europe/London (in Docker Compose unter environment). Setze die Zeitzone im Container immer über die Umgebungsvariable. Sie hat Vorrang vor timezone in der lxlogger.toml.

Passt die Zeitzone nicht zum Miniserver, bricht der Import ab, bevor er etwas schreibt. Mehr dazu unter Datenimport → Zeitzone.

Übergib Passwörter und Tokens nicht als -e VAR=wert, sondern als gemountete Dateien über die _FILE-Konvention:

Terminal-Fenster
docker run -d \
--name lxlogger \
-e LXL_MINISERVER_TIMEZONE=Europe/Berlin \
-v ~/lxlogger/lxlogger.toml:/etc/lxlogger/lxlogger.toml:ro \
-v ~/lxlogger/license:/etc/lxlogger/license:ro \
-v ~/lxlogger/data:/var/lib/lxlogger \
-v ~/lxlogger/secrets/influx_token:/run/secrets/influx_token:ro \
-e LXL_SINK_INFLUXDB_V2_TOKEN_FILE=/run/secrets/influx_token \
ghcr.io/6fdigital/lxlogger:latest up

Die entsprechenden Werte (token, password) in der lxlogger.toml können dann entfallen.

Das folgende Beispiel startet den LxLogger zusammen mit InfluxDB v2 und Grafana:

services:
influxdb:
image: influxdb:2
volumes:
- influxdb-data:/var/lib/influxdb2
ports:
- "8086:8086"
grafana:
image: grafana/grafana:latest
volumes:
- grafana-data:/var/lib/grafana
ports:
- "3000:3000"
lxlogger:
image: ghcr.io/6fdigital/lxlogger:latest
command: up
depends_on:
- influxdb
environment:
- LXL_MINISERVER_TIMEZONE=Europe/Berlin
volumes:
- ./lxlogger.toml:/etc/lxlogger/lxlogger.toml:ro
- ./license:/etc/lxlogger/license:ro
- lxlogger-data:/var/lib/lxlogger
volumes:
influxdb-data:
grafana-data:
lxlogger-data:

Grafana ist anschließend unter http://localhost:3000 erreichbar (Standard-Login admin/admin). Die Einrichtung der Datenquelle beschreibt die Seite Konfiguration Grafana.