--- - name: DockerAPI Install hosts: become: yes tasks: - name: update apt: upgrade: yes update_cache: yes cache_valid_time: 86400 # cache_valid_time = One day - name: dependencies apt: state: present name: - ca-certificates - curl - gnupg # Uncomment code below to install ufw together with docker # - name: install ufw # apt: # state: present # name: # - ufw # - name: ufw allow ssh # ufw: # rule: allow # port: '22' # proto: tcp # - name: enable ufw # ufw: # state: enabled - name: mkdir /etc/apt/keyrings file: path: /etc/apt/keyrings state: directory mode: '0755' - name: download Docker GPG key shell: curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg args: executable: /bin/bash - name: set permissions for Docker GPG key file: path: /etc/apt/keyrings/docker.gpg mode: 'a+r' - name: add Docker repository shell: | 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 args: executable: /bin/bash - name: update apt: update_cache: yes upgrade: yes - name: install Docker Engine apt: state: present name: - docker-ce - docker-ce-cli - containerd.io - docker-buildx-plugin - docker-compose-plugin - docker - docker-compose