--- - name: Ensure all previously installed docker packages are uninstalled apt: name: - docker.io - docker-compose - docker-compose-v2 - docker-doc - podman-docker state: absent purge: true - name: Install dependencies apt: name: - ca-certificates - curl state: present - name: Download Docker repository key securely become: true get_url: url: https://download.docker.com/linux/ubuntu/gpg dest: /etc/apt/keyrings/docker.asc mode: '0644' force: true # Ensures updates if the key changes - name: Add Docker repository become: true apt_repository: repo: "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable" state: present update_cache: true - name: Install Docker and related components become: true apt: name: - docker-ce - docker-ce-cli - containerd.io - docker-buildx-plugin - docker-compose-plugin state: present - name: Add user to the docker group user: name: "{{ ansible_user }}" groups: docker append: true when: ansible_user != "root" - name: Start and enable Docker service service: name: docker state: started enabled: true