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>
This commit is contained in:
parent
8ca2122cb3
commit
d4bec94b99
10
roles/docker/tasks/communication/main.yml
Normal file
10
roles/docker/tasks/communication/main.yml
Normal file
@ -0,0 +1,10 @@
|
||||
---
|
||||
# Communication services - Social media, messaging, and external communication
|
||||
|
||||
- name: Install gotosocial
|
||||
import_tasks: gotosocial.yml
|
||||
tags: gotosocial
|
||||
|
||||
- name: Install postiz
|
||||
import_tasks: postiz.yml
|
||||
tags: postiz
|
19
roles/docker/tasks/development/main.yml
Normal file
19
roles/docker/tasks/development/main.yml
Normal file
@ -0,0 +1,19 @@
|
||||
---
|
||||
# Development services - Code, collaboration, and development tools
|
||||
|
||||
- name: Install gitea
|
||||
import_tasks: gitea.yml
|
||||
tags: gitea
|
||||
|
||||
- name: Install codeserver
|
||||
import_tasks: codeserver.yml
|
||||
tags: codeserver
|
||||
|
||||
- name: Install conduit
|
||||
import_tasks: conduit.yml
|
||||
tags: conduit
|
||||
|
||||
# Commented services can be uncommented when ready
|
||||
#- name: Install grist
|
||||
# import_tasks: grist.yml
|
||||
# tags: grist
|
17
roles/docker/tasks/infrastructure/main.yml
Normal file
17
roles/docker/tasks/infrastructure/main.yml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
# Infrastructure services - Core platform components
|
||||
|
||||
- name: Install caddy
|
||||
import_tasks: caddy.yml
|
||||
tags: caddy
|
||||
|
||||
- name: Install authentik
|
||||
import_tasks: authentik.yml
|
||||
tags: authentik
|
||||
|
||||
- name: Deploy dockge stack
|
||||
community.docker.docker_compose_v2:
|
||||
project_src: /opt/dockge
|
||||
files:
|
||||
- dockge.yml
|
||||
tags: dockge
|
@ -56,121 +56,58 @@
|
||||
owner: root
|
||||
mode: 644
|
||||
|
||||
- name: deploy dockge stack
|
||||
community.docker.docker_compose_v2:
|
||||
project_src: /opt/dockge
|
||||
files:
|
||||
- dockge.yml
|
||||
tags: dockge
|
||||
# Deploy services by category for better organization and dependency management
|
||||
- name: Deploy infrastructure services
|
||||
import_tasks: infrastructure/main.yml
|
||||
tags:
|
||||
- infrastructure
|
||||
- caddy
|
||||
- authentik
|
||||
- dockge
|
||||
|
||||
- name: Install caddy
|
||||
import_tasks: caddy.yml
|
||||
tags: caddy
|
||||
- name: Deploy development services
|
||||
import_tasks: development/main.yml
|
||||
tags:
|
||||
- development
|
||||
- gitea
|
||||
- codeserver
|
||||
- conduit
|
||||
|
||||
- name: Install gitea
|
||||
import_tasks: gitea.yml
|
||||
tags: gitea
|
||||
- name: Deploy media services
|
||||
import_tasks: media/main.yml
|
||||
tags:
|
||||
- media
|
||||
- audiobookshelf
|
||||
- calibre
|
||||
- ghost-1
|
||||
- pinchflat
|
||||
- pinry
|
||||
- hoarder
|
||||
- manyfold
|
||||
|
||||
- name: Install hoarder
|
||||
import_tasks: hoarder.yml
|
||||
tags: hoarder
|
||||
- name: Deploy productivity services
|
||||
import_tasks: productivity/main.yml
|
||||
tags:
|
||||
- productivity
|
||||
- paperlessngx
|
||||
- baikal
|
||||
- syncthing
|
||||
- mmdl
|
||||
- heyform
|
||||
- dawarich
|
||||
- pingvin
|
||||
|
||||
- name: Install authentik
|
||||
import_tasks: authentik.yml
|
||||
tags: authentik
|
||||
- name: Deploy monitoring services
|
||||
import_tasks: monitoring/main.yml
|
||||
tags:
|
||||
- monitoring
|
||||
- glance
|
||||
- changedetection
|
||||
- appriseapi
|
||||
|
||||
- name: Install gotosocial
|
||||
import_tasks: gotosocial.yml
|
||||
tags: gotosocial
|
||||
|
||||
#- name: Install grist
|
||||
# import_tasks: grist.yml
|
||||
# tags: grist
|
||||
|
||||
#- name: Install tasksmd
|
||||
# import_tasks: tasksmd.yml
|
||||
# tags: tasksmd
|
||||
|
||||
- name: Install glance
|
||||
import_tasks: glance.yml
|
||||
tags: glance
|
||||
|
||||
#- name: Install stirlingpdf
|
||||
# import_tasks: stirlingpdf.yml
|
||||
# tags: stirlingpdf
|
||||
|
||||
- name: Install pingvin
|
||||
import_tasks: pingvin.yml
|
||||
tags: pingvin
|
||||
|
||||
- name: Install postiz
|
||||
import_tasks: postiz.yml
|
||||
tags: postiz
|
||||
|
||||
- name: Install pinry
|
||||
import_tasks: pinry.yml
|
||||
tags: pinry
|
||||
|
||||
- name: Install audiobookshelf
|
||||
import_tasks: audiobookshelf.yml
|
||||
tags: audiobookshelf
|
||||
|
||||
- name: Install calibre
|
||||
import_tasks: calibre.yml
|
||||
tags: calibre
|
||||
|
||||
- name: Install paperlessngx
|
||||
import_tasks: paperlessngx.yml
|
||||
tags: paperlessngx
|
||||
|
||||
- name: Install heyform
|
||||
import_tasks: heyform.yml
|
||||
tags: heyform
|
||||
|
||||
- name: Install codeserver
|
||||
import_tasks: codeserver.yml
|
||||
tags: codeserver
|
||||
|
||||
- name: Install baikal
|
||||
import_tasks: baikal.yml
|
||||
tags: baikal
|
||||
|
||||
- name: Install syncthing
|
||||
import_tasks: syncthing.yml
|
||||
tags: syncthing
|
||||
|
||||
- name: Install ghost-1
|
||||
import_tasks: ghost-1.yml
|
||||
tags: ghost-1
|
||||
|
||||
- name: Install dawarich
|
||||
import_tasks: dawarich.yml
|
||||
tags: dawarich
|
||||
|
||||
#- name: Install beaver
|
||||
# import_tasks: beaver.yml
|
||||
# tags: beaver
|
||||
|
||||
- name: Install changedetection
|
||||
import_tasks: changedetection.yml
|
||||
tags: changedetection
|
||||
|
||||
- name: Install conduit
|
||||
import_tasks: conduit.yml
|
||||
tags: conduit
|
||||
|
||||
- name: Install pinchflat
|
||||
import_tasks: pinchflat.yml
|
||||
tags: pinchflat
|
||||
|
||||
- name: Install appriseapi
|
||||
import_tasks: appriseapi.yml
|
||||
tags: appriseapi
|
||||
|
||||
- name: Install manyfold
|
||||
import_tasks: manyfold.yml
|
||||
tags: manyfold
|
||||
|
||||
- name: Install mmdl
|
||||
import_tasks: mmdl.yml
|
||||
tags: mmdl
|
||||
- name: Deploy communication services
|
||||
import_tasks: communication/main.yml
|
||||
tags:
|
||||
- communication
|
||||
- gotosocial
|
||||
- postiz
|
35
roles/docker/tasks/media/main.yml
Normal file
35
roles/docker/tasks/media/main.yml
Normal file
@ -0,0 +1,35 @@
|
||||
---
|
||||
# Media services - Content creation, management, and consumption
|
||||
|
||||
- name: Install audiobookshelf
|
||||
import_tasks: audiobookshelf.yml
|
||||
tags: audiobookshelf
|
||||
|
||||
- name: Install calibre
|
||||
import_tasks: calibre.yml
|
||||
tags: calibre
|
||||
|
||||
- name: Install ghost-1
|
||||
import_tasks: ghost-1.yml
|
||||
tags: ghost-1
|
||||
|
||||
- name: Install pinchflat
|
||||
import_tasks: pinchflat.yml
|
||||
tags: pinchflat
|
||||
|
||||
- name: Install pinry
|
||||
import_tasks: pinry.yml
|
||||
tags: pinry
|
||||
|
||||
- name: Install hoarder
|
||||
import_tasks: hoarder.yml
|
||||
tags: hoarder
|
||||
|
||||
- name: Install manyfold
|
||||
import_tasks: manyfold.yml
|
||||
tags: manyfold
|
||||
|
||||
# Commented services can be uncommented when ready
|
||||
#- name: Install beaver
|
||||
# import_tasks: beaver.yml
|
||||
# tags: beaver
|
14
roles/docker/tasks/monitoring/main.yml
Normal file
14
roles/docker/tasks/monitoring/main.yml
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
# Monitoring services - System monitoring, alerts, and dashboards
|
||||
|
||||
- name: Install glance
|
||||
import_tasks: glance.yml
|
||||
tags: glance
|
||||
|
||||
- name: Install changedetection
|
||||
import_tasks: changedetection.yml
|
||||
tags: changedetection
|
||||
|
||||
- name: Install appriseapi
|
||||
import_tasks: appriseapi.yml
|
||||
tags: appriseapi
|
39
roles/docker/tasks/productivity/main.yml
Normal file
39
roles/docker/tasks/productivity/main.yml
Normal file
@ -0,0 +1,39 @@
|
||||
---
|
||||
# Productivity services - Task management, document handling, and personal organization
|
||||
|
||||
- name: Install paperlessngx
|
||||
import_tasks: paperlessngx.yml
|
||||
tags: paperlessngx
|
||||
|
||||
- name: Install baikal
|
||||
import_tasks: baikal.yml
|
||||
tags: baikal
|
||||
|
||||
- name: Install syncthing
|
||||
import_tasks: syncthing.yml
|
||||
tags: syncthing
|
||||
|
||||
- name: Install mmdl
|
||||
import_tasks: mmdl.yml
|
||||
tags: mmdl
|
||||
|
||||
- name: Install heyform
|
||||
import_tasks: heyform.yml
|
||||
tags: heyform
|
||||
|
||||
- name: Install dawarich
|
||||
import_tasks: dawarich.yml
|
||||
tags: dawarich
|
||||
|
||||
- name: Install pingvin
|
||||
import_tasks: pingvin.yml
|
||||
tags: pingvin
|
||||
|
||||
# Commented services can be uncommented when ready
|
||||
#- name: Install tasksmd
|
||||
# import_tasks: tasksmd.yml
|
||||
# tags: tasksmd
|
||||
|
||||
#- name: Install stirlingpdf
|
||||
# import_tasks: stirlingpdf.yml
|
||||
# tags: stirlingpdf
|
Loading…
x
Reference in New Issue
Block a user