--- # ansible role to install docker-ce onto various operating systems - name: Ensure required packages are installed become: true apt: name: "{{ item }}" with_items: ["ca-certificates", "curl", "gnupg"] when: ansible_os_family == "Debian" # Add docker's key # sudo # curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg # sudo chmod a+r /etc/apt/keyrings/docker.gpg - name: Install the keyring become: true shell: cmd: "install -m 0755 -d /etc/apt/keyrings" - name: Get the key become: true shell: cmd: "curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --batch --yes --dearmor -o /etc/apt/keyrings/docker.gpg" - name: Set permissions become: true shell: cmd: "chmod a+r /etc/apt/keyrings/docker.gpg" # Set up the stable repository # echo \ # "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ # "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ # sudo tee /etc/apt/sources.list.d/docker.list > /dev/null - name: Set up the stable repository become: true shell: cmd: 'echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null' - name: Install Docker become: true apt: name: "{{ item }}" state: present update_cache: yes force_apt_get: yes with_items: ["docker-ce", "docker-ce-cli", "containerd.io", "docker-compose"] when: ansible_os_family == "Debian"