Check
Homelab Service Check — Current Status
Last checked: 2026-06-12 (fleet-check via
./bin/fleet-check.zshfor localhost, matrix_root, vps_pacman_root, vps_ultraman_root)
Service Status
| Service | Domain | Host | Systemd | HTTP | SSO / Login | User management | Email (SMTP) | Notes |
|---|---|---|---|---|---|---|---|---|
| Kanidm | id.alienzj.org | lab-matrix | ● | 200 | can login | no signup (CLI) | — | |
| OAuth2-Proxy | auth.alienzj.org | lab-matrix | ● | — | SSO gate | — | — | Unix socket /run/oauth2-proxy/ |
| PostgreSQL | — | lab-matrix | ● | — | — | — | — | v18, ensures pattern |
| Gatus | status.alienzj.org | lab-matrix | ● | 200 | no login | no signup | no setup | Health dashboard, 5m probes |
| Gotify | push.alienzj.org | lab-matrix | ● | 200 | can login | no signup (disabled) | no setup | Full SPA web UI at / |
| Vaultwarden | bw.alienzj.org | lab-matrix | ● | 200 | can login | no signup (disabled) | works | /api/ SSO-exempt for mobile apps |
| Forgejo | git.alienzj.org | lab-matrix | ● | 200 | can login | no signup (disabled) | works | CLI admin user create for first account |
| Forgejo Runner | — | lab-matrix | ● | — | — | — | — | Active and running. |
| Immich | immich.alienzj.org | lab-matrix | ● | 200 | can login | no signup (?) | not test | /api/ SSO-exempt for mobile apps |
| Paperless | paper.alienzj.org | lab-matrix | ● | 302 | can login | no signup (disabled) | not test | 302 = redirect to login (normal) |
| Stalwart | mail.alienzj.org | lab-matrix | ● | 200 | can login | no signup (?) | works | Webadmin dashboard bug: shows 0 users |
| Atuin | atuin.alienzj.org | lab-matrix | ● | 200 | can login | no signup (disabled) | no setup | openRegistration two-deploy cycle |
| Affine | affine.alienzj.org | lab-matrix | ● | 200 | can login | has signup | not test | OCI container, Prisma migrations |
| FreshRSS | rss.alienzj.org | lab-matrix | ● | — | can login | no signup (disabled) | no setup | PHP-FPM, no standalone port |
| Linkwarden | links.alienzj.org | lab-matrix | ● | 200 | can login | no signup (disabled) | not test | |
| Calibre | books.alienzj.org | lab-matrix | ● | 200 | no login | no signup | no setup | Read-only library browsing |
| Stirling-PDF | pdf.alienzj.org | lab-matrix | ● | 401 | can login | no signup (?) | no setup | 401 = default login page (normal) |
| OnlyOffice | office.alienzj.org | lab-matrix | ● | 404 | no login | no signup | no setup | 404 at root = normal (API-only) |
| HedgeDoc | note.alienzj.org | lab-matrix | ● | 200 | can login | no signup (disabled) | not test | |
| LiteLLM | litellm.alienzj.org | lab-matrix | ✕ OFF | 000 | — | no signup | no setup | Disabled (enable = false); module + package still installed for future use |
| Grocy | grocy.alienzj.org | lab-matrix | ● | — | can login | no signup (?) | no setup | PHP-FPM, no standalone port |
| Mealie | meal.alienzj.org | lab-matrix | ● | 200 | can login | no signup (disabled) | not test | |
| VictoriaMetrics | metrics.alienzj.org | lab-matrix | ● | 401 | can login | no signup | no setup | 401 = HTTP Basic Auth (normal) |
| Glance | glance.alienzj.org | lab-matrix | ● | 200 | SSO only | no user system | no setup | No per-user login; SSO gate only. Everyone sees same dashboard. |
| Jitsi Meet | meet.alienzj.org | lab-matrix | ● | 307 | SSO gate | no user system | no setup | All 4 backends active (prosody, jicofo, jvb2, excalidraw). 307 = redirect to Kanidm (normal). |
| Anki Sync | anki.alienzj.org | lab-matrix | ● | 404 | API only | username+password | no setup | 404 at root = normal (no web UI). Use Anki Desktop → sync URL https://anki.alienzj.org/ or Tailscale direct http://100.88.42.65:27701/ |
| WebDAV (Dufs) | dav.alienzj.org | lab-matrix | ● | 401 | SSO gate | username+password | no setup | 401 = Basic/Digest auth (normal). Zotero sync URL: https://dav.alienzj.org/documents |
| Nix Cache | cache.alienzj.org | lab-matrix | ● | 301 | API only | no signup | no setup | 301 = redirect (normal). Landing page SSO-protected. Binary paths exempted. |
| JupyterHub | jupyter.alienzj.org | id3-eniac | ✕ OFF | 000 | — | — | — | Disabled (enable = false) on id3-eniac |
| Ollama | — | id3-eniac | ● | 200 | no login | no signup | — | LLM backend API serving models (port 11434) |
| Open-WebUI | ollama.alienzj.org | id3-eniac | ● | 200 | SSO gate | no signup (disabled) | — | Frontend for Ollama on id3-eniac |
HTTP Status Legend
| Code | Meaning |
|---|---|
| 200 | OK — alive and responding |
| 301/302 | Redirect — alive (to login or HTTPS) |
| 307 | SSO redirect — alive (redirecting to Kanidm login) |
| 401 | Auth required — alive (service requires internal login) |
| 404 | Not Found — alive (no root page; API-only service) |
| 000 | Unreachable — service down or port not listening |
| — | Non-HTTP service (PHP-FPM, XMPP, database, etc.) |
Known Issues
(No active failed or stuck services. All systems clear!)
Resolved Issues
🟢 gitea-runner-lab-matrix — Active (0 issues)
Status: Resolved. The forgejo-runner-token.age secret was updated to the correct KEY=VALUE format (prefixed with TOKEN=), and the service is now active and running.
🟡 litellm — Disabled
modules.services.ai.litellm.enable = false in hosts/lab-matrix/modules/modules.nix. The module (modules/services/ai/litellm.nix) and package (packages/litellm/) are fully maintained and can be re-enabled by flipping the flag to true and ensuring the required age secrets exist (API keys for DeepSeek, Anthropic, OpenAI, etc.).
🟢 Jitsi Meet — Working
All 4 backend services are active (prosody, jicofo, jitsi-videobridge2, jitsi-excalidraw). The nginx vhost correctly redirects to Kanidm SSO. The full public path (https://meet.alienzj.org) returns HTTP/2 307 → redirect to auth.alienzj.org. Access requires SSO authentication.
🟢 Anki Sync — Working (No Web UI)
The sync server is running and listening on 0.0.0.0:27701. The 404 at the root URL is normal — this is an API-only service with no web UI.
Quick Check
# Fleet-wide health check
./bin/fleet-check.zsh
./bin/fleet-check.zsh matrix_root
./bin/fleet-check.zsh vps_pacman_root
./bin/fleet-check.zsh vps_ultraman_root