Updated multiple stack files to use local hostnames instead of external domains, simplified Traefik configuration, and reorganized Authentik service location. Changes improve local development setup and reduce complexity.
Key changes:
- Simplified .gitignore to exclude entire conf/ directory
- Updated Traefik labels across services to use .swarm.home domains
- Removed Cloudflare cert resolver references for local TLS
- Moved Authentik from apps/ to core/ directory structure
- Removed Traefik labels from n8n and paperless services
- Updated Traefik stack to use simplified port bindings
- Added timezone environment variable to adminer and outline
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove port 8011 binding, route through Traefik instead
- Add Traefik labels for docs.home.frostlabs.me
- Update Paperless URLs to use HTTPS with local domain
- Configure allowed hosts and CSRF trusted origins
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update all volume paths from /home/doc/swarm-data to /home/doc/projects/swarm-data
- Add Traefik local entrypoint on port 8443 with host mode networking
- Add Adminer local route with Traefik labels
- Configure Vikunja OIDC integration with Authentik
- Add Outline stack configuration
- Add traefik-local stack for local network routing
- Update .gitignore with backup files and dynamic configs
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Promoted p1, p2, p3 from worker to manager nodes for 4-node quorum
- Removed unnecessary hostname constraints from service configs
- Only traefik and portainer remain pinned to p0
- Services now auto-balance across all nodes via GlusterFS shared storage
- Updated README with cluster overview and distribution strategy
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>