- name: Install required system packages apt: pkg: - apt-transport-https - ca-certificates - curl - software-properties-common - python3-pip - virtualenv - python3-setuptools - duf state: latest update_cache: true - name: setup shell import_tasks: shell.yml - name: Add Docker GPG apt Key apt_key: url: https://download.docker.com/linux/ubuntu/gpg state: present - name: Add Docker Repository apt_repository: repo: deb https://download.docker.com/linux/debian bookworm stable state: present - name: Update apt and install docker-ce apt: name: docker-ce state: latest update_cache: true - name: copy over ufw-docker.sh ansible.builtin.copy: src: ufw-docker.sh dest: /usr/local/bin/ufw-docker.sh owner: root mode: 755 - name: execute ufw-docker.sh ansible.builtin.shell: /usr/local/bin/ufw-docker.sh install - name: make directories ansible.builtin.file: path: "{{ item }}" state: directory loop: - /opt/stacks - /opt/dockge - name: copy dockge compose file ansible.builtin.copy: src: dockge-compose.yml dest: /opt/dockge/dockge.yml owner: root mode: 644 # 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: Deploy development services import_tasks: development/main.yml tags: - development - gitea - codeserver - conduit - name: Deploy media services import_tasks: media/main.yml tags: - media - audiobookshelf - calibre - ghost-1 - pinchflat - pinry - hoarder - manyfold - name: Deploy productivity services import_tasks: productivity/main.yml tags: - productivity - paperlessngx - baikal - syncthing - mmdl - heyform - dawarich - pingvin - name: Deploy monitoring services import_tasks: monitoring/main.yml tags: - monitoring - glance - changedetection - appriseapi - name: Deploy communication services import_tasks: communication/main.yml tags: - communication - gotosocial - postiz