Skip to content

feat(Homedex): add Homedex, a read-only homelab inventory - #1068

Open
HarshShah0203 wants to merge 1 commit into
IceWhaleTech:mainfrom
HarshShah0203:add-homedex
Open

HarshShah0203 wants to merge 1 commit into
IceWhaleTech:mainfrom
HarshShah0203:add-homedex

Conversation

@HarshShah0203

Copy link
Copy Markdown

Summary

Adds Homedex, a read-only inventory for a homelab: it records the services, hosts, ports, routes, certificates, domains and changes it discovers from Docker, Proxmox VE, Tailscale and reverse proxies, and never starts, stops or reconfigures anything.

App ID io.github.harshshah0203.homedex
Category Networking
Image ghcr.io/harshshah0203/homedex:0.2.1 (amd64, arm64, arm/v7)
Default port 7377
Data /DATA/AppData/$AppID/data
Author / Developer Harsh Shah (upstream author)

What changed

  • New app: Apps/Homedex/docker-compose.yml, icon.png, screenshot-1.png to screenshot-5.png.
  • No changes to category-list.json, recommend-list.json or featured-apps.json.

Docker socket

Unlike the existing Docker-aware apps, Homedex never receives the raw socket. A tecnativa/docker-socket-proxy sidecar alone mounts it read only, allows GET on containers, images, networks, info and version, rejects every write (POST=0), sits on an internal: true network shared only with Homedex, and publishes no port. Homedex runs as UID 65532 with a read-only root filesystem and all capabilities dropped; a one-shot homedex-init container (same pattern as OpenClaw) hands the data folder, created by CasaOS as root, to that user.

Validation

  • validate_compose.py --app-path Homedex: success, 0 issues.
  • ./scripts/build_dist.sh: OK io.github.harshshah0203.homedex, images pinned for amd64, arm64 and arm, min_memory 80 MiB.
  • docker compose up --wait locally: all services healthy, admin password applied from HOMEDEX_ADMIN_PASSWORD, Docker source through tcp://docker-socket-proxy:2375 validates, a write through the proxy is refused with 403.

First-run notes

Set HOMEDEX_ADMIN_PASSWORD (12 or more characters) in the install settings: Homedex stores only its Argon2id hash on first start and ignores it afterwards, so the Web UI is never open for whoever reaches it first. Then sign in and keep the prefilled Docker endpoint tcp://docker-socket-proxy:2375.

@sonarqubecloud

Copy link
Copy Markdown

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant