update documentation and config to reflect 21 active services
Removed references to 9 decommissioned services from CLAUDE.md, README.md, domains.yml, services.yml, and Glance release tracking. Added services tag and Cronmaster to docs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
||||
|
||||
## Overview
|
||||
|
||||
This is a personal infrastructure Ansible playbook that automates deployment and management of 27 self-hosted Docker services across two domains (`thesatelliteoflove.com` and `nerder.land`). The setup uses Tailscale VPN for secure networking and Caddy for reverse proxy with automated HTTPS.
|
||||
This is a personal infrastructure Ansible playbook that automates deployment and management of 21 self-hosted Docker services across two domains (`thesatelliteoflove.com` and `nerder.land`). The setup uses Tailscale VPN for secure networking and Caddy for reverse proxy with automated HTTPS.
|
||||
|
||||
**Important**: Always review `DEPLOYMENT_LEARNINGS.md` when working on this repository for lessons learned and troubleshooting guidance.
|
||||
|
||||
@@ -30,10 +30,11 @@ ansible-playbook dns.yml -i hosts.yml
|
||||
# Deploy specific services using tags (now properly isolated)
|
||||
ansible-playbook site.yml -i hosts.yml --tags caddy --vault-password-file vault_pass
|
||||
ansible-playbook site.yml -i hosts.yml --tags authentik --vault-password-file vault_pass
|
||||
ansible-playbook site.yml -i hosts.yml --tags mmdl --vault-password-file vault_pass
|
||||
ansible-playbook site.yml -i hosts.yml --tags docker --vault-password-file vault_pass # all docker services
|
||||
ansible-playbook site.yml -i hosts.yml --tags gitea --vault-password-file vault_pass
|
||||
ansible-playbook site.yml -i hosts.yml --tags docker --vault-password-file vault_pass # entire docker role
|
||||
ansible-playbook site.yml -i hosts.yml --tags services --vault-password-file vault_pass # all services only
|
||||
|
||||
# Deploy services by category (new organized structure)
|
||||
# Deploy services by category
|
||||
ansible-playbook site.yml -i hosts.yml --tags infrastructure --vault-password-file vault_pass
|
||||
ansible-playbook site.yml -i hosts.yml --tags media,productivity --vault-password-file vault_pass
|
||||
ansible-playbook site.yml -i hosts.yml --tags development,monitoring --vault-password-file vault_pass
|
||||
@@ -51,7 +52,7 @@ ansible-playbook site.yml -i hosts.yml --tags common,cron --vault-password-file
|
||||
### Role Structure
|
||||
- **bootstrap**: Initial server hardening, user creation, Tailscale VPN setup
|
||||
- **common**: Basic system configuration, UFW firewall management
|
||||
- **docker**: Comprehensive service deployment (24 containerized applications, organized by category)
|
||||
- **docker**: Comprehensive service deployment (21 containerized applications, organized by category)
|
||||
- **cron**: Scheduled task management (currently Warhammer RSS feed generation)
|
||||
|
||||
### Docker Role Organization (Reorganized into Logical Categories)
|
||||
@@ -60,15 +61,15 @@ The docker role is now organized into logical service groups under `roles/docker
|
||||
- **infrastructure/**: Core platform components
|
||||
- Caddy (reverse proxy), Authentik (SSO), Dockge (container management)
|
||||
- **development/**: Development and collaboration tools
|
||||
- Gitea, Code Server, ByteStash
|
||||
- Gitea, ByteStash
|
||||
- **media/**: Content creation and consumption
|
||||
- Audiobookshelf, Calibre, Ghost blog, Pinchflat, Pinry, Karakeep (formerly Hoarder), Manyfold
|
||||
- Audiobookshelf, Calibre, Karakeep (formerly Hoarder), Manyfold
|
||||
- **productivity/**: Personal organization and document management
|
||||
- Paperless-NGX, MMDL, Baikal (CalDAV/CardDAV), Syncthing, Heyform, Dawarich, Palmr, Obsidian LiveSync
|
||||
- **communication/**: Social media and external communication
|
||||
- GoToSocial (Fediverse), Postiz (social media management)
|
||||
- Paperless-NGX, Baikal (CalDAV/CardDAV), Syncthing, Heyform, Dawarich, Obsidian LiveSync
|
||||
- **communication/**: Social media
|
||||
- GoToSocial (Fediverse)
|
||||
- **monitoring/**: System monitoring and alerts
|
||||
- Changedetection, Glance dashboard, AppriseAPI, Gotify
|
||||
- Changedetection, Glance dashboard, AppriseAPI, Gotify, Cronmaster
|
||||
|
||||
### Variable Management
|
||||
**Critical**: This infrastructure uses a centralized variable hierarchy in `group_vars/all/`:
|
||||
@@ -131,7 +132,6 @@ Common domains requiring hairpinning fixes:
|
||||
- **Dawarich**: Based on production compose file at https://github.com/Freika/dawarich/blob/master/docker/docker-compose.production.yml
|
||||
|
||||
## Service Memories
|
||||
- palmr is the service that responds on files.thesatelliteoflove.com
|
||||
- karakeep (formerly called hoarder) is deployed with both 'hoarder' and 'karakeep' tags for backward compatibility
|
||||
- whenever i ask you what containers need updates, run dockcheck and return a list of containers needing updates
|
||||
- when i ask for the status container updates i want you to run dockcheck on the docker host https://github.com/mag37/dockcheck?ref=selfh.st
|
||||
@@ -148,7 +148,7 @@ Common domains requiring hairpinning fixes:
|
||||
- Organized secrets by service with consistent `vault_` prefix
|
||||
|
||||
### Service Tag Fix:
|
||||
**Critical**: Service tags are now properly isolated. `--tags mmdl` deploys only MMDL (5 tasks), not the entire productivity category.
|
||||
**Critical**: Service tags are properly isolated. Individual service tags deploy only that service. The `services` tag runs all service tasks across all categories.
|
||||
|
||||
### Template Pattern:
|
||||
All templates now follow this pattern:
|
||||
|
||||
Reference in New Issue
Block a user