Skip to content

Pyrite service roadmap todo

Focused backlog for services to host on pyrite and the shared infrastructure work needed to run them reliably.

Note: workstation platform tasks (Wayland, boot, kernel tuning, tunnel operations) are tracked in https://github.com/gperdrizet/homelab/blob/main/docs/machines/pyrite/docs/TODO.md.

New services to add

  • [ ] Matrix server
  • [ ] Choose stack: Synapse or Dendrite
  • [ ] Decide where Element Web will run (gatekeeper nginx static/app proxy)
  • [ ] Persist media and DB on pyrite storage with backup coverage

  • [ ] Immich photo album

  • [ ] Deploy Immich app + required workers
  • [ ] Attach persistent library storage path on pyrite
  • [ ] Validate hardware acceleration path for thumbnails/transcoding

  • [ ] Vaultwarden

  • [ ] Decide host location: pyrite vs existing gatekeeper deployment
  • [ ] If pyrite-hosted, add nginx reverse proxy route via gatekeeper
  • [ ] Configure admin token handling and backup/restore test

  • [ ] GitHub alternative

  • [ ] Choose platform: Forgejo or Gitea
  • [ ] Plan repo storage path and backup retention
  • [ ] Configure SSH + HTTPS git access through gatekeeper
  • [ ] Service ingress standardization
  • [ ] Domain naming plan for each new service
  • [ ] nginx vhost + TLS certbot wiring on gatekeeper
  • [ ] Tailscale/private-only policy for staging or admin endpoints

  • [ ] Data and backup policy

  • [ ] Define backup class per service: database, media, repos, secrets
  • [ ] Add restore drill checklist for each service
  • [ ] Confirm retention windows and off-host copy targets

  • [ ] Observability baseline

  • [ ] Add health checks and uptime probes
  • [ ] Add service metrics/log forwarding into existing monitoring stack
  • [ ] Add alerts for disk, memory, and service down events

  • [ ] Auth and security baseline

  • [ ] MFA policy and admin account hardening
  • [ ] Secret placement in Vaultwarden and .env template updates
  • [ ] Rate limiting and security headers for public endpoints

  • [ ] Pyrite capacity planning

  • [ ] Estimate storage growth (Immich media + git repos + Matrix media)
  • [ ] Validate RAM/CPU headroom for concurrent services
  • [ ] Define resource limits per container/service

Existing pyrite core services (for context)

  • llama.cpp (8502)
  • PostgreSQL (5432)
  • nixx (8000)