diff --git a/docker-management.yml b/docker-management.yml new file mode 100644 index 0000000..bc8678f --- /dev/null +++ b/docker-management.yml @@ -0,0 +1,66 @@ +- name: Docker Management Playbook + hosts: test + tasks: + + - name: Ensure apt cache is updated + apt: + update_cache: yes + + - name: Install required packages + apt: + name: + - ca-certificates + - curl + state: present + + - name: Ensure /etc/apt/keyrings exists + file: + path: /etc/apt/keyrings + state: directory + mode: '0755' + owner: root + group: root + + - name: Download Docker GPG key + ansible.builtin.get_url: + url: https://download.docker.com/linux/debian/gpg + dest: /etc/apt/keyrings/docker.asc + mode: '0644' + owner: root + group: root + validate_certs: yes + + - name: Add Docker apt source (deb822 .sources) + copy: + dest: /etc/apt/sources.list.d/docker.sources + content: | + Types: deb + URIs: https://download.docker.com/linux/debian + Suites: trixie + Components: stable + Signed-By: /etc/apt/keyrings/docker.asc + owner: root + group: root + mode: '0644' + + - name: Update apt cache after adding Docker repo + apt: + update_cache: yes + + - name: Install Docker packages + apt: + name: + - docker-ce + - docker-ce-cli + - containerd.io + - docker-buildx-plugin + - docker-compose-plugin + state: present + allow_unauthenticated: no + update_cache: yes + + - name: Ensure docker service is enabled and started + service: + name: docker + enabled: yes + state: started