From 0390901233ae9e55ea8b9bf5af61ec981510e9c0 Mon Sep 17 00:00:00 2001 From: Lenoctambule <106790775+lenoctambule@users.noreply.github.com> Date: Mon, 9 Mar 2026 21:25:18 +0100 Subject: [PATCH] feat(install-docker.yml): fix repo add + install pkgs + project structure --- deploy/docker-install.yml | 37 ----------------- install-docker.yml | 61 ++++++++++++++++++++++++++++ inventory.yml => inventory/local.yml | 1 - playbook.yml | 1 + templates/docker.sources.j2 | 5 +++ 5 files changed, 67 insertions(+), 38 deletions(-) delete mode 100644 deploy/docker-install.yml create mode 100644 install-docker.yml rename inventory.yml => inventory/local.yml (98%) create mode 100644 playbook.yml create mode 100644 templates/docker.sources.j2 diff --git a/deploy/docker-install.yml b/deploy/docker-install.yml deleted file mode 100644 index a54d7db..0000000 --- a/deploy/docker-install.yml +++ /dev/null @@ -1,37 +0,0 @@ -- name: Installing Docker and Docker Compose - hosts: hosts - - tasks: - - name: Clear previous install of Docker - ansible.builtin.apt: - pkg: - - docker.io - - docker-compose - - docker-compose-v2 - - docker-doc - - podman-docker - - containerd - state: absent - autoremove: true - - - name: Install pre-requirements - ansible.builtin.apt: - update_cache: yes - pkg: - - ca-certificates - - curl - - - name: Add Docker GPG key and Repository - become: true - block: - - name: somerepo | no apt key - ansible.builtin.get_url: - url: https://download.docker.com/linux/ubuntu/gpg - dest: /etc/apt/keyrings/docker.asc - - - name: somerepo | apt source - ansible.builtin.apt_repository: - repo: "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable" - state: present - - \ No newline at end of file diff --git a/install-docker.yml b/install-docker.yml new file mode 100644 index 0000000..41fbad6 --- /dev/null +++ b/install-docker.yml @@ -0,0 +1,61 @@ +- name: Installing Docker and Docker Compose + hosts: hosts + become: true + + tasks: + - name: Clear previous install of Docker + ansible.builtin.apt: + name: + - docker.io + - docker-compose + - docker-compose-v2 + - docker-doc + - podman-docker + - containerd + state: absent + autoremove: true + force: true + + - name: Install pre-requirements + ansible.builtin.apt: + update_cache: yes + pkg: + - ca-certificates + - curl + force: true + + - name: Add Docker GPG key and Repository + block: + - name: Download GPG Key + ansible.builtin.get_url: + url: https://download.docker.com/linux/ubuntu/gpg + dest: /etc/apt/keyrings/docker.asc + + - name: Add Docker repository source + ansible.builtin.template: + src: docker.sources.j2 + dest: /etc/apt/sources.list.d/docker.sources + owner: root + group: root + mode: '0644' + + - name: Update apt cache after adding Docker repository + ansible.builtin.apt: + update_cache: yes + + - name: Install Docker and Docker Compose + ansible.builtin.apt: + state: present + name: + - docker-ce + - docker-ce-cli + - containerd.io + - docker-buildx-plugin + - docker-compose-plugin + force: true + + - name: Add ubuntu user to docker group + ansible.builtin.user: + name: "{{ ansible_user_id }}" + groups: docker + append: yes \ No newline at end of file diff --git a/inventory.yml b/inventory/local.yml similarity index 98% rename from inventory.yml rename to inventory/local.yml index 50c802c..49ccbc6 100644 --- a/inventory.yml +++ b/inventory/local.yml @@ -1,4 +1,3 @@ - hosts: hosts: 127.0.0.1: diff --git a/playbook.yml b/playbook.yml new file mode 100644 index 0000000..ea813fb --- /dev/null +++ b/playbook.yml @@ -0,0 +1 @@ +- import_playbook: ./playbooks/install-docker.yml \ No newline at end of file diff --git a/templates/docker.sources.j2 b/templates/docker.sources.j2 new file mode 100644 index 0000000..10ef80a --- /dev/null +++ b/templates/docker.sources.j2 @@ -0,0 +1,5 @@ +Types: deb +URIs: https://download.docker.com/linux/ubuntu +Suites: {{ ansible_distribution_release }} +Components: stable +Signed-By: /etc/apt/keyrings/docker.asc