Commit Graph
6 Commits
Author SHA1 Message Date
PhilandClaude Opus 5.5 68a1622665 Deploy StarPunk from its CI-built image
StarPunk's Gitea Actions workflow now builds and pushes the image on
vX.Y.Z tags. Pin the tag in starpunk_version (v2.0.2, the first CI build)
and always pull it, so an image built by hand on the server with the
same name can't be deployed instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 12:24:08 -06:00
PhilandClaude Opus 5.5 be9523a0c4 Manage Gondulf and StarPunk with Ansible
Both were hand-deployed to /opt/stacks. Templates match the live setup
and keep the same stack dirs and volume names, so data stays put.
Secrets come from the vault; .env and the StarPunk compose file are now
0640 root:docker instead of the broken 1204 mode. Adds their DNS
records to dns.yml and drops the dead godulf. Caddy route (no DNS).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 09:42:36 -06:00
PhilandClaude Opus 5.5 c0145dd5a2 Harden permissions, close exposed ports, and clean up tasks
- Quote file modes. Unquoted 644/755 were read as decimal, so files
  landed as 1204. Templates holding secrets are now 0640 root:docker.
- Stop publishing Authentik 9000/9443 and Karakeep 3000 (Caddy reaches
  them over the docker network), bind dir2opds to the Tailscale IP, and
  drop Caddy's unused 8448.
- Atuin login uses no_log and only runs once; the installer only runs
  when Atuin is missing.
- Make chsh, ufw-docker install, the bat symlink and Atuin dotfiles
  idempotent.
- Back up the Paperless data volume (SQLite DB), stopping Paperless
  during the backup.
- Close public sign-up on kosync and ByteStash.
- Replace hardcoded IPs and domains with variables.
- Remove teardown tasks and templates for 9 retired services.
- Fix the dockcheck comment: it auto-updates labelled containers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 21:03:54 -06:00
Phillip Skentelbery 767ff9dae6 feat: add listmonk mailing list service 2026-06-27 17:57:03 -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
philandClaude d4bec94b99 refactor: reorganize docker role into logical service groups
Break down the monolithic main.yml (176 lines) into organized service categories:

- infrastructure/ (caddy, authentik, dockge) - Core platform components
- development/ (gitea, codeserver, conduit) - Development tools
- media/ (audiobookshelf, calibre, ghost, pinchflat, etc.) - Content services
- productivity/ (paperless, baikal, syncthing, mmdl, etc.) - Personal organization
- monitoring/ (glance, changedetection, appriseapi) - System monitoring
- communication/ (gotosocial, postiz) - Social/messaging services

Benefits:
- Improved maintainability with logical grouping
- Better dependency management between service categories
- Enhanced tag-based deployment (can deploy by category)
- Cleaner organization for 25+ services

All individual service tags remain functional for backwards compatibility.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-06 11:50:26 -06:00