Skip to main content

Smart Home Stack Installation

This guide covers the Smart Home stack used for home automation and household inventory.

Overview

ComponentPurposePortURL
Home AssistantHome automation hub8123ha.ravenhelm.dev
GrocyHousehold inventory and chores80grocy.ravenhelm.dev

Prerequisites

Before deploying the Smart Home Stack:

Directory Structure

mkdir -p ~/ravenhelm/services/{homeassistant,grocy}
mkdir -p ~/ravenhelm/data/{homeassistant,grocy}

Step 1: Deploy Home Assistant

Create ~/ravenhelm/services/homeassistant/docker-compose.yml:

services:
homeassistant:
image: ghcr.io/home-assistant/home-assistant:stable
container_name: homeassistant
restart: unless-stopped
privileged: true
networks:
- ravenhelm_net
environment:
- TZ=America/Chicago
volumes:
- /Users/ravenhelm/ravenhelm/data/homeassistant:/config
labels:
- "traefik.enable=true"
- "traefik.http.routers.homeassistant.rule=Host(`ha.ravenhelm.dev`)"
- "traefik.http.routers.homeassistant.entrypoints=websecure"
- "traefik.http.routers.homeassistant.tls.certresolver=letsencrypt"
- "traefik.http.services.homeassistant.loadbalancer.server.port=8123"

networks:
ravenhelm_net:
external: true

Start Home Assistant:

cd ~/ravenhelm/services/homeassistant
docker compose up -d

Step 2: Deploy Grocy

Create ~/ravenhelm/services/grocy/docker-compose.yml:

version: "3.9"

services:
grocy:
image: lscr.io/linuxserver/grocy:latest
container_name: grocy
restart: unless-stopped
networks:
- ravenhelm_net
environment:
- PUID=1000
- PGID=1000
- TZ=America/Chicago
volumes:
- ../../data/grocy:/config
labels:
- "com.ravenhelm.service=grocy"
- "traefik.enable=true"
- "traefik.http.routers.grocy.rule=Host(`grocy.ravenhelm.dev`)"
- "traefik.http.routers.grocy.entrypoints=websecure"
- "traefik.http.routers.grocy.tls.certresolver=letsencrypt"
- "traefik.http.services.grocy.loadbalancer.server.port=80"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
interval: 30s
timeout: 10s
retries: 3

networks:
ravenhelm_net:
external: true

Start Grocy:

cd ~/ravenhelm/services/grocy
docker compose up -d

Verification

  • Home Assistant: https://ha.ravenhelm.dev
  • Grocy: https://grocy.ravenhelm.dev