diff --git a/roles/docker/defaults/main.yml b/roles/docker/defaults/main.yml new file mode 100644 index 0000000..77dd3d7 --- /dev/null +++ b/roles/docker/defaults/main.yml @@ -0,0 +1,2 @@ +docker_gpg_key_url_deb: https://download.docker.com/linux/debian/gpg +docker_deb_repo: https://download.docker.com/linux/debian diff --git a/roles/docker/tasks/main.yml b/roles/docker/tasks/main.yml new file mode 100644 index 0000000..7af92c7 --- /dev/null +++ b/roles/docker/tasks/main.yml @@ -0,0 +1,37 @@ +--- +- name: Install Debian prerequisites + ansible.builtin.package: + name: + - ca-certificates + - curl + - gnupg + state: present + update_cache: yes + when: ansible_os_family == 'Debian' + +- name: Add Docker GPG key + get_url: + url: "{{ docker_gpg_key_url_deb }}" + dest: /etc/apt/keyrings/docker.asc + mode: "0644" + when: ansible_os_family == 'Debian' + +- name: Add Docker APT repository + apt_repository: + repo: "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] {{ docker_deb_repo }} {{ ansible_distribution_release }} main" + filename: docker + state: present + when: ansible_os_family == 'Debian' + +- name: Install Docker from source + ansible.builtin.package: + name: + - docker-ce + - docker-ce-cli + - containerd.io + - docker-buildx-plugin + - docker-compose-plugin + state: present + update_cache: yes + when: ansible_os_family == 'Debian' +