- name: Installing Docker and Docker Compose hosts: hosts become: true tasks: - name: Clear previous install of Docker ansible.builtin.apt: name: - docker.io - docker-compose - docker-compose-v2 - docker-doc - podman-docker - containerd state: absent autoremove: true force: true - name: Install pre-requirements ansible.builtin.apt: update_cache: yes pkg: - ca-certificates - curl force: true - name: Add Docker GPG key and Repository block: - name: Download GPG Key ansible.builtin.get_url: url: https://download.docker.com/linux/ubuntu/gpg dest: /etc/apt/keyrings/docker.asc - name: Add Docker repository source ansible.builtin.template: src: docker.sources.j2 dest: /etc/apt/sources.list.d/docker.sources owner: root group: root mode: '0644' - name: Update apt cache after adding Docker repository ansible.builtin.apt: update_cache: yes - name: Install Docker and Docker Compose ansible.builtin.apt: state: present name: - docker-ce - docker-ce-cli - containerd.io - docker-buildx-plugin - docker-compose-plugin force: true ignore_errors: '{{ ansible_check_mode }}' - name: Ensure group "docker" exists ansible.builtin.group: name: docker state: present - name: Add user to group ansible.builtin.user: name: "{{ ansible_user_id }}" groups: docker append: yes ignore_errors: '{{ ansible_check_mode }}'