Files
container/roborock/docker-compose.yml
T

37 lines
1.3 KiB
YAML

services:
roborock-server:
image: ghcr.io/python-roborock/local_roborock_server:latest
container_name: roborock_server
restart: unless-stopped
# host-Netzwerk ist zwingend erforderlich für mDNS (Staubsauger-Erkennung)
network_mode: host
environment:
- REGION=${ROBOROCK_REGION:-de}
- TIMEZONE=${ROBOROCK_TIMEZONE:-Europe/Berlin}
- ROBOROCK_SERVER_LISTENER_MODE=external_tls
# Der Container lauscht direkt auf dem Host auf diesen Ports:
- ROBOROCK_SERVER_HTTPS_PORT=${ROBOROCK_SERVER_HTTPS_PORT:-8888}
- ROBOROCK_SERVER_MQTT_PORT=${ROBOROCK_SERVER_MQTT_PORT:-8884} # Unverschlüsseltes MQTT für HAProxy-Backend
volumes:
- roborock_data:/data
# Aus Robustheitsgründen mit wget (oft eher in Python/Alpine-Images enthalten als curl)
healthcheck:
test: [
"CMD",
"wget",
"--no-check-certificate",
"-q",
"-O",
"-",
"http://127.0.0.1:${ROBOROCK_SERVER_HTTPS_PORT:-8888}/admin"
]
interval: ${ROBOROCK_HEALTHCHECK_INTERVAL:-30s}
timeout: ${ROBOROCK_HEALTHCHECK_TIMEOUT:-5s}
retries: ${ROBOROCK_HEALTHCHECK_RETRIES:-5}
start_period: ${ROBOROCK_HEALTHCHECK_START_PERIOD:-20s}
volumes:
roborock_data:
name: ${ROBOROCK_VOLUME_NAME:-roborock_data}