From b3cf97de2418849bd11ce654c8045b6c80ab0f35 Mon Sep 17 00:00:00 2001 From: Romain ROCHAS Date: Fri, 17 Oct 2025 12:09:15 +0200 Subject: [PATCH] Add Home Assistant docker compose template - Add Home Assistant template with version 2025.10.2 - Configure reverse proxy support for Coolify with trusted private IP ranges - Include D-Bus volume for Bluetooth integration support - Add healthcheck for container monitoring - Include configuration.yaml with reverse proxy settings to fix 400 Bad Request errors --- public/svgs/home-assistant.svg | 4 +++ templates/compose/home-assistant.yaml | 46 +++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 public/svgs/home-assistant.svg create mode 100644 templates/compose/home-assistant.yaml diff --git a/public/svgs/home-assistant.svg b/public/svgs/home-assistant.svg new file mode 100644 index 000000000..7bce628cf --- /dev/null +++ b/public/svgs/home-assistant.svg @@ -0,0 +1,4 @@ + + + + diff --git a/templates/compose/home-assistant.yaml b/templates/compose/home-assistant.yaml new file mode 100644 index 000000000..a54bca8c9 --- /dev/null +++ b/templates/compose/home-assistant.yaml @@ -0,0 +1,46 @@ +# documentation: https://www.home-assistant.io/installation/linux#docker-compose +# slogan: Open source home automation that puts local control and privacy first. +# category: automation +# tags: home-automation,iot,smart-home,automation,domotics,mqtt,zigbee,zwave +# logo: svgs/home-assistant.svg +# port: 8123 + +services: + homeassistant: + image: ghcr.io/home-assistant/home-assistant:2025.10.2 + environment: + - SERVICE_URL_HOMEASSISTANT_8123 + - TZ=${TZ:-UTC} + - DISABLE_JEMALLOC=${DISABLE_JEMALLOC:-false} + volumes: + - homeassistant-config:/config + - /etc/localtime:/etc/localtime:ro + - /run/dbus:/run/dbus:ro + + - type: bind + source: ./configuration.yaml + target: /config/configuration.yaml + content: | + # Loads default set of integrations. Do not remove. + default_config: + + # Configuration for reverse proxy support (required for Coolify) + http: + use_x_forwarded_for: true + trusted_proxies: + - 10.0.0.0/8 + - 172.16.0.0/12 + - 192.168.0.0/16 + ip_ban_enabled: true + login_attempts_threshold: 5 + + automation: !include automations.yaml + script: !include scripts.yaml + scene: !include scenes.yaml + privileged: true + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8123"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 60s