Files
container/roborock/docker-compose.yml
T

32 lines
1.5 KiB
YAML
Raw Normal View History

2026-10-06 14:47:16 +00:00
services:
roborock-server:
image: ghcr.io/python-roborock/local_roborock_server:latest
2026-10-06 15:16:33 +00:00
container_name: roborock_server
2026-10-06 14:47:16 +00:00
restart: unless-stopped
2026-10-07 09:02:18 +00:00
ports:
- "${ROBOROCK_SERVER_HTTPS_PORT:-8888}:${ROBOROCK_SERVER_HTTPS_PORT:-8888}"
- "${ROBOROCK_SERVER_MQTT_TLS_PORT:-8883}:${ROBOROCK_SERVER_MQTT_TLS_PORT:-8883}"
2026-10-06 14:47:16 +00:00
environment:
2026-10-07 12:22:49 +00:00
# Alle Umgebungsvariablen sind nun vollständig parametrisiert:
2026-10-06 15:16:33 +00:00
- REGION=${ROBOROCK_REGION:-de}
- TIMEZONE=${ROBOROCK_TIMEZONE:-Europe/Berlin}
2026-10-07 08:37:39 +00:00
- ROBOROCK_SERVER_LISTENER_MODE=${ROBOROCK_SERVER_LISTENER_MODE:-external_tls}
2026-10-06 15:20:10 +00:00
- ROBOROCK_SERVER_HTTPS_PORT=${ROBOROCK_SERVER_HTTPS_PORT:-8888}
2026-10-07 08:37:39 +00:00
- ROBOROCK_SERVER_MQTT_TLS_PORT=${ROBOROCK_SERVER_MQTT_TLS_PORT:-8883}
2026-10-06 15:01:54 +00:00
volumes:
2026-10-07 13:18:55 +00:00
# 2. Mappt den Datenordner für Datenbanken und Zertifikate nach /data
- ${ROBOROCK_HOST_PATH:-/opt/roborock_data}/data:/data
# 3. Übernimmt die optionale Secrets-Struktur (z.B. für Cloudflare-Tokens)
- ${ROBOROCK_HOST_PATH:-/opt/roborock_data}/secrets:/run/secrets:ro
2026-10-06 15:01:54 +00:00
healthcheck:
2026-10-07 13:03:34 +00:00
# Nutzt deinen funktionalen curl-Befehl, erweitert um dynamische .env-Variablen
2026-10-06 15:16:33 +00:00
test: [
"CMD",
2026-10-07 13:03:34 +00:00
"curl",
"-skf",
"${ROBOROCK_SERVER_HEALTHCHECK_SCHEME:-http}://127.0.0.1:${ROBOROCK_SERVER_HTTPS_PORT:-8888}/admin"
2026-10-06 15:16:33 +00:00
]
interval: ${ROBOROCK_HEALTHCHECK_INTERVAL:-30s}
timeout: ${ROBOROCK_HEALTHCHECK_TIMEOUT:-5s}
retries: ${ROBOROCK_HEALTHCHECK_RETRIES:-5}
start_period: ${ROBOROCK_HEALTHCHECK_START_PERIOD:-20s}