Ctrl K
ComunidadGuías…

compose.dev.yaml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
name: hauser-dev

services:
  home-assistant:
    image: ghcr.io/home-assistant/home-assistant:2026.7.4@sha256:5a531753cea96444200158fc2b0ac7ccd739291ec50414877b396de6e0bb29b3
    restart: unless-stopped
    environment:
      TZ: Europe/Berlin
    ports:
      - "${HAUSER_DEV_HOST_ADDRESS:?Run scripts/dev-pilot.sh instead of invoking Compose directly}:${HAUSER_DEV_HA_PORT:-18123}:8123"
    volumes:
      - home_assistant_config:/config
      - ./dev/home-assistant/configuration.yaml:/config/configuration.yaml:ro
    healthcheck:
      test:
        - CMD
        - python
        - -c
        - "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8123/manifest.json', timeout=3)"
      interval: 10s
      timeout: 5s
      start_period: 60s
      retries: 12

  hauser:
    image: hauser:dev-pilot
    pull_policy: never
    build:
      context: .
      dockerfile: Dockerfile
      args:
        HAUSER_VERSION: dev-pilot
    # Named volumes carry the right ownership already — no root preparation
    # needed, and cap_drop: ALL would not allow it (see compose.yaml).
    user: node
    init: true
    restart: unless-stopped
    read_only: true
    cap_drop:
      - ALL
    security_opt:
      - no-new-privileges:true
    ports:
      - "${HAUSER_DEV_APP_BIND_ADDRESS:-127.0.0.1}:${HAUSER_DEV_APP_PORT:-14173}:4173"
    environment:
      HMI_ALLOWED_ORIGINS: "http://localhost:${HAUSER_DEV_APP_PORT:-14173},http://127.0.0.1:${HAUSER_DEV_APP_PORT:-14173},http://${HAUSER_DEV_HOST_ADDRESS}:${HAUSER_DEV_APP_PORT:-14173}"
      HMI_AI_CUSTOMIZING_ENABLED: "0"
      HMI_ROOM_IMAGE_AUTH_MODE: direct
      HMI_HOUSEHOLD_CONFIG_PATH: /config/household.json
      HMI_HOUSEHOLD_CONFIG_MODE: active
      HMI_CONFIG_PATH: /data/config.json
      HMI_FAMILY_DATA_PATH: /data/family-data.json
      HMI_SONG_LIBRARY_DIR: /data/songs
      HMI_REQUIRED_WRITABLE_DIRS: /config,/data,/assets
    volumes:
      - hauser_config:/config
      - hauser_data:/data
      - hauser_assets:/assets
    tmpfs:
      - /tmp:rw,nosuid,nodev,noexec,size=64m
    healthcheck:
      test: ["CMD", "node", "container/healthcheck.mjs"]
      interval: 10s
      timeout: 3s
      start_period: 10s
      retries: 3
    stop_grace_period: 15s
    depends_on:
      home-assistant:
        condition: service_healthy

volumes:
  home_assistant_config:
  hauser_config:
  hauser_data:
  hauser_assets: