Commit Graph
183 Commits
Author SHA1 Message Date
Phillip Skentelbery 676e574e60 fix: add -url flag to dir2opds for correct download links behind Caddy 2026-06-30 18:33:40 -06:00
Phillip Skentelbery 3320a9f9ff feat: add opds and sync DNS A records 2026-06-30 18:11:16 -06:00
Phillip Skentelbery d1e5fd9d0c feat: add koreader sync server + fix apt cache in caddy task 2026-06-30 17:59:48 -06:00
Phillip Skentelbery ba992c6433 feat: expose dir2opds via Caddy with basic auth + direct tailscale access 2026-06-30 17:49:04 -06:00
Phillip Skentelbery a2b31ea1d1 feat: add dir2opds OPDS book catalog service (tailnet-only) 2026-06-29 18:30:30 -06:00
Phillip Skentelbery 3e0b2054a9 feat: add repaircafe.nerder.land redirect to listmonk signup 2026-06-27 21:07:00 -06:00
Phillip Skentelbery 639a187797 fix: add container_name for cross-project DNS resolution 2026-06-27 18:22:19 -06:00
Phillip Skentelbery 6891770a30 fix: remove unnecessary port publishing from listmonk 2026-06-27 18:00:30 -06:00
Phillip Skentelbery 767ff9dae6 feat: add listmonk mailing list service 2026-06-27 17:57:03 -06:00
Phil e47465c34d Merge branch 'main' of git.thesatelliteoflove.com:phil/ansible 2026-05-07 11:49:23 -06:00
Phil 6fc6094f84 fixed caddyfile 2026-05-07 11:47:49 -06:00
Phil d2b45435d6 playing with dawarich config 2026-05-07 11:36:10 -06:00
Phillip SkentelberyandClaude Opus 4.6 bca7e7dbae 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>
2026-05-05 22:43:01 -06:00
Phil a18b835c53 Authentik update 2026-05-05 14:48:04 -06:00
Phillip SkentelberyandClaude Opus 4.6 b92b18d9fb add services tag to run all docker service tasks
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-05 14:14:10 -06:00
Phillip SkentelberyandClaude Opus 4.6 46d8fecdfa decommission 9 services: codeserver, ghost, pinchflat, pinry, mmdl, palmr, kanboard, grocy, postiz
Replace deploy tasks with teardown tasks that stop containers and remove
stack directories. Remove Caddy routes and DNS records, with explicit
Route53 deletion for the decommissioned subdomains.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-05 14:04:51 -06:00
phil 99e36d9492 added missing auto update labels 2025-10-22 18:36:46 -06:00
phil bbb9f50eff bumped authentik version to 2025.8.4 2025-10-22 18:03:49 -06:00
phil 78fd63dcb5 restoring backed up files 2025-10-22 16:52:03 -06:00
philandClaude f088247ac0 feat: add dockcheck auto-update labels to remaining services
Add mag37.dockcheck.update labels to enable automated container update monitoring for:
- Gotify iOS assistant service
- Karakeep (Hoarder) bookmark manager and all components (Chrome, Meilisearch)
- MMDL task management service
- Postiz social media scheduler and all components (PostgreSQL, Redis)

This completes the rollout of dockcheck labels across all Docker services for consistent update monitoring.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-08 17:40:30 -06:00
philandClaude e1b6d3132a feat: update service versions and add backup configurations
- Update Authentik to 2025.6.4
- Update Dawarich and Karakeep to latest versions
- Add Paperless-NGX backup with S3 storage
- Improve GoToSocial backup configuration with better naming and retention
- Add dockcheck update labels for automated container monitoring

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-08 17:26:16 -06:00
philandClaude f71ded1a01 feat: add Grocy kitchen ERP service
- Add grocy subdomain to domains.yml
- Create Docker Compose template using LinuxServer image
- Add Ansible task for service deployment
- Configure Caddy reverse proxy with Authentik auth and API bypass
- Add DNS record for grocy subdomain
- Integrate with productivity services category

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-28 08:47:28 -06:00
philandClaude a2ae9e5ff6 feat: add Kanboard project management service
- Add kanboard subdomain to domains.yml
- Create Docker Compose template with SQLite backend and plugin store enabled
- Add Ansible task for service deployment
- Configure Caddy reverse proxy routing
- Integrate with productivity services category

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-28 07:21:45 -06:00
philandClaude fb6651f1dc docs: complete documentation audit and updates
- Update service count from 24 to 27 across all documentation
- Add missing services: ByteStash, Obsidian LiveSync, Gotify
- Update service categories in README.md, CLAUDE.md, docker/README.md
- Remove deprecated secrets.enc references from command examples
- Update todo.md with complete service listings
- Ensure all documentation accurately reflects current infrastructure

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 15:27:42 -06:00
philandClaude 58a6be8da0 docs: update documentation to reflect Pingvin → Palmr migration
- Replace all Pingvin references with Palmr in documentation
- Update README.md, CLAUDE.md, roles/docker/README.md, and todo.md
- Maintain accurate service count (24 services)
- Update service memories and productivity category listings

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 15:10:24 -06:00
philandClaude 17c3077cf0 feat: add Palmr file sharing service to replace Pingvin
- Add Palmr Docker Compose template with encryption enabled
- Create Palmr deployment tasks for productivity category
- Add files.thesatelliteoflove.com routing in Caddyfile
- Restore files subdomain for Palmr service
- Add Palmr to Glance dashboard with file icon
- Generate and store encryption key in vault
- Configure HTTPS, Authentik integration, and dockcheck updates

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 12:59:11 -06:00
philandClaude 75fabb3523 feat: deprecate Pingvin file sharing service
- Remove Pingvin Docker Compose template and deployment tasks
- Remove files.thesatelliteoflove.com routing from Caddyfile
- Remove files subdomain from domain variables
- Stop and remove Pingvin containers from remote server
- Clean up /opt/stacks/pingvin directory

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 12:36:58 -06:00
philandClaude 336e197176 feat: add dockcheck update labels and fix Gotify service names
- Add mag37.dockcheck.update labels to audiobookshelf, caddy, gitea services
- Fix Gotify container names in Caddyfile routing
- Add explicit container names for gotify and igotify-assistant services
- Update Authentik to version 2025.6.3
- Fix environment variable format in gotify-compose template

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 11:26:17 -06:00
philandClaude f0c4cb51b8 fix: resolve Glance template parsing conflict with Go template syntax
- Wrap Go template syntax in Jinja2 raw blocks to prevent parsing conflicts
- Fix custom-api air quality widget template rendering
- Update Glance dashboard layout with search widget and head-widgets

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-03 09:31:58 -06:00
philandClaude c95ca45a67 feat: add Obsidian LiveSync CouchDB service for note synchronization
- Add Obsidian LiveSync Docker service with CouchDB backend
- Configure service for Tailscale-only access on port 5984
- Add vault credentials for database authentication
- Create productivity category task and handler
- Enable Glance dashboard integration

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-02 23:46:05 -06:00
philandClaude a287e50048 feat: add ByteStash service for code snippet management
- Add ByteStash Docker service configuration and deployment
- Configure subdomain routing through Caddy
- Add DNS record for ByteStash subdomain
- Update development service category to include ByteStash

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-02 13:53:23 -06:00
philandClaude 01d959d12c feat: enable automatic updates for ghost-1 container
Added dockcheck label to enable automatic container updates for the
ghost-1 photo blog service, ensuring it stays current with latest
security patches and features.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-24 11:13:51 -06:00
philandClaude a4fc5f7608 fix: exclude dawarich database container from dockcheck updates
Added dawarich_db to the exclusion list to prevent automatic updates
of the database container, ensuring data integrity and preventing
potential downtime during automated container updates.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-24 11:12:12 -06:00
philandClaude e3f4eb4e95 fix: update manyfold template to use proper vault variables and standardize configuration
- Fixed manyfold deployment error by updating template to use vault_manyfold.secret_key instead of undefined manyfold_key
- Standardized template to use centralized variables for domains, network, and hairpin configuration
- Added proper OIDC configuration using vault_manyfold.oidc structure

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-23 18:06:06 -06:00
philandClaude a8350459ae feat: enable automatic container updates with dockcheck labels
- Configure dockcheck for automatic updates instead of check-only mode
- Add dockcheck update labels to Calibre and Changedetection services
- Enable OnlyLabel and AutoMode for targeted container management

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22 14:51:37 -06:00
philandClaude eac67e269c fix: add Gotify hairpin to AppriseAPI for notification delivery
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-20 16:42:12 -06:00
philandClaude 85cfca08f5 fix: improve dockcheck cron job logging and reliability
- Added comprehensive logging to /var/log/dockcheck/dockcheck.log
- Created wrapper script to avoid cron variable escaping issues
- Added timestamp logging for each execution with exit codes
- Created proper log directory with correct permissions
- Removed unnecessary -n flag (config file handles DontUpdate=true)
- Added cron handlers for service management

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-20 10:30:51 -06:00
philandClaude 2cc05a19e6 fix: add Gotify hairpin to changedetection services
- Add extra_hosts entry for changedetection service to reach Gotify
- Add extra_hosts entry for sockpuppetbrowser service to reach Gotify
- Resolves internal routing issues for Gotify notifications

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-19 17:18:30 -06:00
philandClaude d54d04bcc9 feat: add dockcheck cron job for container update notifications
- Install dockcheck.sh script in user's .local/bin directory
- Create notification templates directory with notify_v2.sh and notify_gotify.sh
- Configure Gotify notifications for container update alerts
- Add minimal config with DontUpdate=true (notification only)
- Exclude authentik-postgresql-1 and dawarich_redis from checks
- Schedule daily cron job at 8:00 AM as phil user
- Add dockcheck Gotify token to vault secrets

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-19 16:54:32 -06:00
philandClaude 5f76f69d8b fix: complete Dawarich architecture with Redis and Sidekiq services
- Add Redis service for caching and background job processing
- Add Sidekiq worker service for background tasks
- Update to tagged version 0.28.1 for stability
- Fix Redis URL format to resolve parsing errors
- Remove incorrect volume mounts and SQLite paths
- Add proper service dependencies and health checks
- Use vault variable for SECRET_KEY_BASE security

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-19 16:04:46 -06:00
phil ef5309363c Update Dawarich to latest (0.28.1) and Glance to latest (v0.8.4) 2025-06-19 15:09:35 -06:00
philandClaude ff89683038 feat: add Gotify notification server with iGotify iOS support
Add comprehensive push notification infrastructure with:
- Gotify server for push notifications with admin password configuration
- iGotify Assistant service for iOS notification relay via Apple Push Notifications
- Dual subdomain setup (gotify.* and gotify-assistant.*)
- Proper service dependencies and container communication via hairpinning
- Caddy reverse proxy configuration for both services
- DNS A records for both subdomains
- Added to monitoring services category
- Tested with successful notification delivery

Services accessible at:
- https://gotify.thesatelliteoflove.com (main server)
- https://gotify-assistant.thesatelliteoflove.com (iOS assistant)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-19 12:46:51 -06:00
philandClaude a338186a77 feat: remove Conduit Matrix service
Remove all traces of the Conduit Matrix homeserver service including:
- Delete conduit-compose.yml.j2 template and conduit.yml task file
- Remove conduit from development services category
- Remove conduit Caddy reverse proxy configuration
- Remove conduit subdomain from domains.yml
- Remove conduit DNS A record from Route53
- Delete Matrix well-known files (client/server)
- Update all documentation from 25 to 24 services

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-19 11:39:15 -06:00
philandClaude 8710ffc70d feat: update documentation and infrastructure configuration
- Update service count from 22+ to 25 across documentation
- Add vault.yml to gitignore for security
- Add notifications configuration for AppriseAPI integration
- Add jq package to common role dependencies
- Add hairpin networking fix for AppriseAPI chat subdomain access
- Remove diun service references from monitoring category
- Update project completion status in todo.md

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-08 21:10:30 -06:00
philandClaude a98fae0b92 feat: update container versions for Baikal, Karakeep, and Postiz
- Update Baikal to v0.10.1 (PostgreSQL support, PHP 8.4 compatibility)
- Update Karakeep to v0.25.0 (Safari extension, PDF screenshots, bulk tag deletion)
- Update Postiz to v1.48.4 (AI image generation, drag-drop uploads, enhanced platform support)

All services tested and running successfully with no errors.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-08 21:04:24 -06:00
philandClaude d05bac8651 fix: add NEXT_API_DEBUG_MODE environment variable to MMDL
Resolves calendar creation issue where clicking save would fail with
'Cannot read properties of undefined (Reading 'toUpperCase')' error.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-08 20:37:08 -06:00
philandClaude c500790ea3 feat: update Glance to v0.8.3
- Updated image version from latest to v0.8.3
- Deployed and verified successful upgrade
- New features available: theme picker, authentication, to-do widget

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-07 12:49:44 -06:00
philandClaude 2e4c096bbe feat: complete variable management implementation and update documentation
- Update remaining Docker Compose templates with centralized variables
- Fix service tag isolation to deploy individual services only
- Update all README files with variable management architecture
- Document variable hierarchy in DEPLOYMENT_LEARNINGS.md
- Add comprehensive variable usage patterns to CLAUDE.md
- Standardize domain references using {{ subdomains.* }} pattern
- Replace hardcoded network names with {{ docker.network_name }}
- Update hairpinning configuration to use variables

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-06 15:45:52 -06:00
philandClaude 12582b352c feat: implement comprehensive variable management system
- Create standardized group_vars directory structure
- Add domains.yml with centralized subdomain mappings
- Add infrastructure.yml with network, SMTP, and path config
- Reorganize vault.yml secrets by service with consistent naming
- Update 15+ Docker compose templates to use new variable structure
- Simplify playbook commands by removing --extra-vars requirement
- Replace hardcoded domains/IPs with template variables
- Standardize secret references across all services

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-06 15:14:47 -06:00
philandClaude 8d686c2aa5 feat: update GoToSocial to 0.19.1 and add Wazero cache
- Update image from latest to 0.19.1 (latest release from Codeberg)
- Add GTS_WAZERO_COMPILATION_CACHE for improved performance
- Use full docker.io registry path as per reference configuration

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-06 14:46:28 -06:00