From 19bdbfde7888b59601f60803e98266420af52da3 Mon Sep 17 00:00:00 2001 From: jaydee Date: Thu, 20 Nov 2025 18:52:06 +0100 Subject: [PATCH] build --- hosts_roles.yml | 14 ++++- roles/docker/tasks/main.yml | 103 +++++++++++++++++++++++++++++++++--- 2 files changed, 109 insertions(+), 8 deletions(-) diff --git a/hosts_roles.yml b/hosts_roles.yml index c545890..6777013 100755 --- a/hosts_roles.yml +++ b/hosts_roles.yml @@ -107,7 +107,19 @@ datacenter: ansible_become_password: q # ansible_ssh_password: q ansible_ssh_private_key_file: ssh_key.pem - + proxmox: + children: + docker_workers: + children: + worker1: + hosts: + 192.168.77.184: + vars: + ansible_ssh_user: jd + ansible_become_user: root + ansible_become_password: q + # ansible_ssh_password: q + ansible_ssh_password: q containers: children: docker_servers: diff --git a/roles/docker/tasks/main.yml b/roles/docker/tasks/main.yml index cd3a9fe..ff8b9ac 100755 --- a/roles/docker/tasks/main.yml +++ b/roles/docker/tasks/main.yml @@ -42,6 +42,67 @@ when: - ansible_distribution == "Debian" and ansible_distribution_major_version == "12" + + - name: Ensure docker keyring directory exists + file: + path: /etc/apt/keyrings + state: directory + mode: "0755" + + - name: Download Docker GPG key + get_url: + url: https://download.docker.com/linux/debian/gpg + dest: /etc/apt/keyrings/docker.asc + mode: "0644" + when: + - ansible_distribution == "Debian" and ansible_distribution_major_version == "13" + + - name: Install docker.sources file + template: + src: docker.sources.j2 + dest: /etc/apt/sources.list.d/docker.sources + owner: root + group: root + mode: "0644" + when: + - ansible_distribution == "Debian" and ansible_distribution_major_version == "13" + + - name: Create docker.sources file + copy: + dest: /etc/apt/sources.list.d/docker.sources + mode: "0644" + content: | + Types: deb + URIs: https://download.docker.com/linux/debian + Suites: {{ ansible_facts['lsb']['codename'] }} + Components: stable + Signed-By: /etc/apt/keyrings/docker.asc + when: + - ansible_distribution == "Debian" and ansible_distribution_major_version == "13" + + + - name: Update apt cache + apt: + update_cache: yes + + when: + - ansible_distribution == "Debian" and ansible_distribution_major_version == "13" + + - name: Download Docker GPG key + get_url: + url: https://download.docker.com/linux/debian/gpg + dest: /etc/apt/keyrings/docker.asc + mode: "0644" + when: + - ansible_distribution == "Debian" and ansible_distribution_major_version == "13" + + + + + + + + - name: Add an Apt signing key to a specific keyring file ansible.builtin.apt_key: url: https://download.docker.com/linux/ubuntu/gpg @@ -84,13 +145,10 @@ # - docker-buildx-plugin # - docker-compose-plugin # update_cache: true - - - - name: Install the version docker + - name: Install the version docker1 ansible.builtin.apt: - name: "{{ item }}=5:28.5.2-1~{{ ansible_distribution | lower }}.{{ ansible_distribution_major_version }}~{{ ansible_distribution_release }}" + name: "{{ item }}" state: present - allow_downgrade: true when: - ansible_distribution == "Debian" loop: @@ -98,7 +156,7 @@ - docker-ce-cli - name: Install the version docker ansible.builtin.apt: - name: "{{ item }}=1.7.28-2~{{ ansible_distribution | lower }}.{{ ansible_distribution_major_version }}~{{ ansible_distribution_release }}" + name: "{{ item }}" state: present allow_downgrade: true when: @@ -108,13 +166,44 @@ - name: Install the version docker ansible.builtin.apt: - name: "{{ item }}=0.28.0-0~{{ ansible_distribution | lower }}.{{ ansible_distribution_major_version }}~{{ ansible_distribution_release }}" + name: "{{ item }}" state: present allow_downgrade: true when: - ansible_distribution == "Debian" loop: - docker-buildx-plugin + + + - name: Install the version docker + ansible.builtin.apt: + name: "{{ item }}=5:28.5.2-1~{{ ansible_distribution | lower }}.{{ ansible_distribution_major_version }}~{{ ansible_distribution_release }}" + state: present + allow_downgrade: true + when: + - ansible_distribution == "Debian1" + loop: + - docker-ce + - docker-ce-cli + - name: Install the version docker + ansible.builtin.apt: + name: "{{ item }}=1.7.28-2~{{ ansible_distribution | lower }}.{{ ansible_distribution_major_version }}~{{ ansible_distribution_release }}" + state: present + allow_downgrade: true + when: + - ansible_distribution == "Debian1" + loop: + - containerd.io + + - name: Install the version docker + ansible.builtin.apt: + name: "{{ item }}=0.28.0-0~{{ ansible_distribution | lower }}.{{ ansible_distribution_major_version }}~{{ ansible_distribution_release }}" + state: present + allow_downgrade: true + when: + - ansible_distribution == "Debian1" + loop: + - docker-buildx-plugin - name: Create a directory docker.service.d ansible.builtin.file: