Files
admin 65acc925fc home-assistant: fix initial config - remove !include directives
The !include directives for automations/scripts/scenes reference files
that don't exist on fresh install, causing HA to enter recovery mode
which ignores trusted_proxies. Simplified to minimal config with just
default_config and http block - HA adds the rest during onboarding.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 19:12:44 +01:00

62 lines
1.9 KiB
YAML

# Home Assistant - Nyílt forráskódú okos otthon központ
# Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based)
# RAM: ~256M (mem_limit: 1024M) | Pi-compatible: Yes
#
# Environment variables:
# DOMAIN - Your domain (e.g., demo-felhom.eu)
services:
home-assistant:
image: ghcr.io/home-assistant/home-assistant:2026.2.2
container_name: home-assistant
restart: unless-stopped
entrypoint: ["/bin/sh", "-c"]
command:
- |
# Ensure reverse-proxy (Traefik) trusted_proxies config exists.
# 172.16.0.0/12 covers all Docker bridge networks.
CFG=/config/configuration.yaml
if [ -f "$$CFG" ] && ! grep -q 'trusted_proxies' "$$CFG"; then
printf '\nhttp:\n use_x_forwarded_for: true\n trusted_proxies:\n - 172.16.0.0/12\n' >> "$$CFG"
elif [ ! -f "$$CFG" ]; then
cat > "$$CFG" << 'HACFG'
default_config:
http:
use_x_forwarded_for: true
trusted_proxies:
- 172.16.0.0/12
HACFG
fi
exec /init
environment:
- TZ=Europe/Budapest
volumes:
- homeassistant_config:/config
networks:
- traefik-public
deploy:
resources:
limits:
memory: 1024M
healthcheck:
test: ["CMD", "curl", "-sf", "http://localhost:8123/manifest.json"]
interval: 30s
timeout: 5s
retries: 3
start_period: 30s
labels:
- "traefik.enable=true"
- "traefik.http.routers.home-assistant.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.home-assistant.entrypoints=websecure"
- "traefik.http.routers.home-assistant.tls=true"
- "traefik.http.routers.home-assistant.tls.certresolver=letsencrypt"
- "traefik.http.services.home-assistant.loadbalancer.server.port=8123"
volumes:
homeassistant_config:
networks:
traefik-public:
external: true