- hosts: servers become: yes vars: env_file: $(pwd)/.env tasks: - name: Install Docker shell: curl -fsSL https://get.docker.com | sh args: creates: /usr/bin/docker - name: Ensure /opt/infra exists file: path: /opt/infra state: directory owner: root group: root mode: '0755' - name: Copy .env to remote copy: src: "{{ env_file }}" dest: /opt/infra/.env owner: root group: root mode: '0600' - name: Install wget apt: name: wget state: present update_cache: yes - name: Clone docker wget: src: "{{ gitea_instance_url }}" dest: /opt/infra - name: Start docker compose via module community.docker.docker_compose_v2: project_src: /opt/infra files: - node-docker.yaml state: present restarted: true