--- - name: Set Docker repository variables based on OS ansible.builtin.set_fact: docker_repo: "{{ docker_repos[ansible_distribution] }}" docker_gpg_key_url: "{{ docker_gpg_keys[ansible_distribution] }}" - name: Install required dependencies ansible.builtin.apt: name: "{{ docker_dependencies }}" state: present update_cache: true - name: Ensure /etc/apt/keyrings directory exists ansible.builtin.file: path: /etc/apt/keyrings state: directory mode: '0755' - name: Download and add Docker GPG key ansible.builtin.get_url: url: "{{ docker_gpg_key_url }}" dest: /etc/apt/keyrings/docker.asc mode: '0644' - name: Add Docker repository ansible.builtin.apt_repository: repo: >- deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] {{ docker_repo }} {{ ansible_distribution_release }} stable state: present filename: docker - name: Install Docker packages ansible.builtin.apt: name: "{{ docker_packages }}" state: present update_cache: true - name: Ensure Docker service is started and enabled ansible.builtin.systemd: name: docker state: started enabled: true ...