From e1500967cf185702979c1028fd4b13f5871bfe3e Mon Sep 17 00:00:00 2001 From: Lino Silva Date: Mon, 4 May 2026 10:33:18 +0100 Subject: [PATCH] feat: Homelable Co-authored-by: Copilot --- ansible/inventories/group_vars/all/main.yml | 10 +++--- docker-compose/apps-1/homelable/.env | 14 ++++++++ docker-compose/apps-1/homelable/compose.yaml | 34 ++++++++++++++++++++ 3 files changed, 53 insertions(+), 5 deletions(-) create mode 100644 docker-compose/apps-1/homelable/.env create mode 100644 docker-compose/apps-1/homelable/compose.yaml diff --git a/ansible/inventories/group_vars/all/main.yml b/ansible/inventories/group_vars/all/main.yml index 7c341ec..47c301b 100644 --- a/ansible/inventories/group_vars/all/main.yml +++ b/ansible/inventories/group_vars/all/main.yml @@ -133,11 +133,6 @@ auto_configure_traefik: host: "10.0.2.46" port: 3000 auth_required: false - # geoguessr: - # subdomain: "geoguessr" - # host: "10.0.2.39" - # port: 8080 - # auth_required: true gitea: subdomain: "gitea" host: "10.0.2.28" @@ -230,6 +225,11 @@ auto_configure_traefik: host: "10.0.4.30" port: 8083 auth_required: true + homelable: + subdomain: "infra" + host: "10.0.4.30" + port: 8084 + auth_required: true # Auth services configuration pocketid_host: 10.0.4.10 diff --git a/docker-compose/apps-1/homelable/.env b/docker-compose/apps-1/homelable/.env new file mode 100644 index 0000000..a7ee303 --- /dev/null +++ b/docker-compose/apps-1/homelable/.env @@ -0,0 +1,14 @@ +# Backend - server-side only (NEVER commit .env) +SQLITE_PATH=/data/homelab.db +# Set this to the URL(s) you use to access Homelable in your browser. +CORS_ORIGINS=["http://localhost:5173","http://localhost:3000","https://infra.lino.cooking"] + +AUTH_USERNAME=admin + +# Scanner — JSON array of CIDR ranges to scan +SCANNER_RANGES=["192.168.1.0/24", "10.0.0.0/21"] + +# Status checker interval in seconds +STATUS_CHECKER_INTERVAL=60 + +LIVEVIEW_KEY=avlS0EW5im0ry9xF2gtJsDxhInef3iJbW7Ix396rOO0 \ No newline at end of file diff --git a/docker-compose/apps-1/homelable/compose.yaml b/docker-compose/apps-1/homelable/compose.yaml new file mode 100644 index 0000000..12b9fde --- /dev/null +++ b/docker-compose/apps-1/homelable/compose.yaml @@ -0,0 +1,34 @@ +services: + backend: + restart: unless-stopped + env_file: + - .env + environment: + # Override env_file: SQLite path must point inside the container volume + SQLITE_PATH: /app/data/homelab.db + volumes: + - /data/homelable:/app/data + networks: + - homelable + # Required for ping-based status checks + cap_add: + - NET_RAW + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8000/api/v1/health"] + interval: 10s + timeout: 5s + retries: 6 + start_period: 15s + + frontend: + restart: unless-stopped + ports: + - "8084:80" + depends_on: + - backend + networks: + - homelable + +networks: + homelable: + driver: bridge