Skip to content

Install with Docker Compose

The release Compose file pulls the versioned image from GHCR and starts it with three persistent volumes.

  • Docker Engine with Compose v2 (docker compose).
  • Network access to ghcr.io.
  • A reachable Home Assistant with a long-lived access token (created later, in the wizard).
Terminal window
git clone https://github.com/ralleur/hauser.git
cd hauser
cp .env.example .env
docker compose pull
docker compose up -d
docker compose ps
docker compose exec hauser node container/healthcheck.mjs

Open http://localhost:4173 and run the setup wizard.

Volume Content
/config The active household.json and migration backups
/data Home Assistant and Jellyfin settings, reminders, notification rules, room-image credentials, hotel-mode data
/assets Room-image sets and the standby map

The container runs read-only as the unprivileged node user with all capabilities dropped.

Only when you deliberately want the checked-out source instead of a release:

Terminal window
docker compose -f compose.yaml -f compose.build.yaml up -d --build
Terminal window
curl -fsS http://localhost:4173/api/health

A fresh install answers "status": "setup_required". After the wizard it answers "status": "ready". See API and health.

See Updates and backups. The complete operations contract is in docs/08-installation.md.