--- - name: Install required packages for Docker ansible.builtin.apt: name: - apt-transport-https - ca-certificates - curl - gnupg - lsb-release state: present update_cache: true - name: Create keyrings directory ansible.builtin.file: path: /etc/apt/keyrings state: directory mode: '0755' - name: Add Docker GPG key ansible.builtin.get_url: url: https://download.docker.com/linux/ubuntu/gpg dest: /etc/apt/keyrings/docker.asc mode: '0644' - name: Get system architecture ansible.builtin.command: dpkg --print-architecture register: dpkg_arch changed_when: false - name: Get Ubuntu codename ansible.builtin.command: lsb_release -cs register: ubuntu_codename changed_when: false - name: Add Docker repository ansible.builtin.apt_repository: repo: "deb [arch={{ dpkg_arch.stdout }} signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu {{ ubuntu_codename.stdout }} stable" state: present filename: docker - name: Install Docker packages ansible.builtin.apt: name: - docker-ce - docker-ce-cli - containerd.io - docker-buildx-plugin - docker-compose-plugin state: present update_cache: true - name: Ensure Docker service is started and enabled ansible.builtin.systemd: name: docker state: started enabled: true - name: Add jerick user to docker group ansible.builtin.user: name: jerick groups: docker append: true ignore_errors: true