--- # Install Docker on a host (for non-Synology systems) - name: Install Docker hosts: "{{ target_host | default('all:!synology') }}" become: true gather_facts: true tasks: - name: Install prerequisites ansible.builtin.apt: name: - apt-transport-https - ca-certificates - curl - gnupg - lsb-release - python3-pip state: present update_cache: true when: ansible_os_family == "Debian" - name: Add Docker GPG key ansible.builtin.apt_key: url: https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg state: present when: ansible_os_family == "Debian" - name: Add Docker repository ansible.builtin.apt_repository: repo: "deb https://download.docker.com/linux/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} stable" state: present when: ansible_os_family == "Debian" - name: Install Docker ansible.builtin.apt: name: - docker-ce - docker-ce-cli - containerd.io - docker-compose-plugin state: present update_cache: true when: ansible_os_family == "Debian" - name: Ensure Docker service is running ansible.builtin.service: name: docker state: started enabled: true - name: Add user to docker group ansible.builtin.user: name: "{{ ansible_user }}" groups: docker append: true