--- - name: Update apt cache ansible.builtin.apt: update_cache: yes - name: Install prerequisite packages ansible.builtin.apt: name: - ca-certificates - curl state: present - name: Create apt keyrings directory ansible.builtin.file: path: /etc/apt/keyrings state: directory mode: '0755' - name: Download Docker GPG key ansible.builtin.get_url: url: "https://download.docker.com/linux/ubuntu/gpg" dest: /etc/apt/keyrings/docker.asc mode: '0644' - name: Add Docker apt repository ansible.builtin.apt_repository: repo: "deb [arch={{ docker_arch }} signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable" filename: docker state: present vars: docker_arch: "{{ ansible_architecture | regex_replace('x86_64', 'amd64') }}" - name: Update apt cache after adding Docker repository ansible.builtin.apt: update_cache: yes - name: Install Docker packages ansible.builtin.apt: name: - docker-ce - docker-ce-cli - containerd.io - docker-buildx-plugin - docker-compose-plugin state: present # - name: Test Docker installation by running hello-world # ansible.builtin.command: docker run hello-world # register: docker_test # ignore_errors: yes # - name: Display Docker test output # ansible.builtin.debug: # msg: "{{ docker_test.stdout }}"