--- - name: Clean install by removing any docker package package: name={{ item }} state=absent with_items: "{{ clean_install_remove_packages }}" - name: Ensure curl & ca-certs are installed package: name: - ca-certificates - curl - gnupg state: latest - name: Ensure docker keyring file exists file: path: /etc/apt/keyrings/docker.gpg state: touch - name: Download docker gpg key and add to keyrings shell: | install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg chmod a+r /etc/apt/keyrings/docker.gpg - name: Sign and add docker deb source shell: | echo \ "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null - name: Update apt sources become: true apt: update_cache: yes cache_valid_time: 1 - name: Install docker packages package: name={{ item }} state=latest with_items: "{{ install_packages }}" - name: Ensure group docker exists user: name: docker state: present