feat(stack): replace Organizr with Tatlock UI, remove Netdata

Remove Organizr dashboard and Netdata monitoring:
- Delete stacks/organizr.yml and stacks/netdata.yml
- Delete organizr-widgets/ directory and npm forward-auth config
- Remove organizr database references from postgres-shared docs

Promote Tatlock UI as primary dashboard:
- Move from port 8092 to 9999 (Organizr's port)
- Enable external access at home.schweitz.net
- Update all documentation references

Update service counts: 26 containers across 20 stacks

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-03 11:23:45 +01:00
co-authored by Claude Opus 4.5
parent d647a2e005
commit ba0aa5ef3d
13 changed files with 39 additions and 1000 deletions
+7 -9
View File
@@ -39,10 +39,10 @@ This is the `tower-of-joy` project - a containerized home server infrastructure
- **Stack Management** the portainer (and docker) and NPM services are managed through the core-api service. To maintain settings and configurations of these systems, read the documentation at http://tower-of-joy:8083/docs and prefer to use the api functions over direct reads an edits.
**Service Integration Policy:** A service deployment is INCOMPLETE until cross-service integrations are implemented. Every new service MUST be integrated with:
- **Organizr:** Configure service in dashboard (Settings → Tab Editor, Homepage Items)
- **Tatlock UI:** Add service to dashboard configuration
- **docs/reference/CONTAINERS.md:** Document the service with full profile and configuration table
Services without monitoring and dashboard integration are considered unfinished and should not be marked as "complete" in STATUS.md or commit messages.
Services without dashboard integration are considered unfinished and should not be marked as "complete" in STATUS.md or commit messages.
## Build & Run Commands
@@ -355,11 +355,9 @@ When deploying a NEW service, follow this complete checklist. A deployment is **
- [ ] Document access credentials securely
**Phase 3: Cross-Service Integration (MANDATORY)**
- [ ] **Organizr Integration:**
- Add service URL and API token to Organizr (Settings → Tab Editor)
- Enable homepage widgets if supported
- Create service tab for direct access
- Test widget displays data correctly
- [ ] **Tatlock UI Integration:**
- Add service to dashboard configuration
- Test service appears correctly in dashboard
- [ ] **NPM Integration (if externally accessible):**
- Create proxy host entry
- Configure SSL with Let's Encrypt
@@ -380,7 +378,7 @@ When deploying a NEW service, follow this complete checklist. A deployment is **
**Phase 5: Verification**
- [ ] Service accessible at documented URL
- [ ] Docker healthcheck shows healthy status
- [ ] Organizr displays service widget/tab correctly
- [ ] Tatlock UI displays service correctly
- [ ] Service persists across container restart
- [ ] Backups configured (if service has important data)
@@ -388,7 +386,7 @@ When deploying a NEW service, follow this complete checklist. A deployment is **
```bash
# 1. Deploy Jellyfin container
# 2. Configure Jellyfin settings and add media
# 3. Add Jellyfin to Organizr (homepage widgets + tab)
# 3. Add Jellyfin to Tatlock UI dashboard
# 4. Document in CONTAINERS.md
# 5. Test all integrations work
# ✓ NOW the deployment is complete