Files
container/roborock/docker-compose.yml
T

48 lines
1.9 KiB
YAML

services:
roborock-server:
image: ghcr.io/python-roborock/local_roborock_server:latest
container_name: roborock_server
restart: unless-stopped
# network_mode: host ENTFERNT -> Wechsel auf Standard-Bridge
ports:
# Format: HOST_PORT:CONTAINER_PORT
- "${ROBOROCK_SERVER_HTTPS_PORT:-8888}:${ROBOROCK_SERVER_HTTPS_PORT:-8888}"
- "${ROBOROCK_SERVER_MQTT_TLS_PORT:-8883}:${ROBOROCK_SERVER_MQTT_TLS_PORT:-8883}"
environment:
- REGION=${ROBOROCK_REGION:-de}
- TIMEZONE=${ROBOROCK_TIMEZONE:-Europe/Berlin}
- ROBOROCK_SERVER_LISTENER_MODE=${ROBOROCK_SERVER_LISTENER_MODE:-external_tls}
- ROBOROCK_SERVER_HTTPS_PORT=${ROBOROCK_SERVER_HTTPS_PORT:-8888}
- ROBOROCK_SERVER_MQTT_TLS_PORT=${ROBOROCK_SERVER_MQTT_TLS_PORT:-8883}
volumes:
# 1. Behält dein Daten-Volume für alle Laufzeitdaten bei
- ${ROBOROCK_HOST_PATH:-./roborock_data}:/data
# 2. ERGÄNZT: Mappt die config.toml exakt dorthin, wo die App sie im Stammverzeichnis sucht
- ${ROBOROCK_HOST_PATH:-./roborock_data}/config.toml:/app/config.toml
healthcheck:
test: [
"CMD",
"wget",
"--no-check-certificate",
"-q",
"-O",
"-",
"${ROBOROCK_SERVER_HEALTHCHECK_SCHEME:-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}
# Dein Setup-Profil bleibt voll funktionsfähig und unberührt erhalten:
roborock-setup:
image: ghcr.io/python-roborock/local_roborock_server:latest
container_name: roborock_setup
stdin_open: true
tty: true
entrypoint: ["python", "-m", "roborock.local_server.setup"]
volumes:
- ${ROBOROCK_HOST_PATH:-./roborock_data}:/data
profiles:
- setup