Update playbooks/install-standard-docker.yml

This commit is contained in:
2025-07-11 01:29:03 +00:00
parent 00ea0d8e0b
commit db9ba99dde

View File

@@ -6,6 +6,7 @@
vars:
docker_acl_path: /opt/docker
docker_version_pinned: "24.0.7"
tasks:
- name: Ensure acl package is installed (for setfacl)
@@ -14,15 +15,12 @@
state: present
update_cache: true
- name: Check if Docker is already installed (by package)
shell: dpkg -s docker-ce 2>/dev/null
register: docker_check
ignore_errors: true
changed_when: false
- name: Install Docker via official script if not present
- name: Install Docker via official script (only if not already installed)
shell: curl -fsSL https://get.docker.com | sh
when: docker_check.rc != 0
args:
creates: /usr/bin/docker
environment:
VERSION: "{{ docker_version_pinned }}"
- name: Ensure docker group exists
group:
@@ -51,4 +49,29 @@
- name: Set default ACL for docker group if not already present
command: setfacl -d -m g:docker:rwx {{ docker_acl_path }}
when: "'group:docker:rwx' not in facl_check.stdout"
when: "'default:group:docker:rwx' not in facl_check.stdout"
- name: Check current Docker version
command: docker --version
register: docker_current_version
changed_when: false
failed_when: false
- name: Check latest Docker version from GitHub
uri:
url: https://api.github.com/repos/docker/docker-ce/releases/latest
return_content: true
register: docker_latest_info
changed_when: false
failed_when: false
- name: Print Docker version info if update available
debug:
msg: >
Current Docker version: {{ docker_current_version.stdout }}
Latest Docker version: {{ docker_latest_info.json.tag_name }}
{% if docker_latest_info.json.tag_name != 'v' + docker_version_pinned %}
A newer version is available than the pinned version ({{ docker_version_pinned }}).
{% else %}
The pinned version is up to date.
{% endif %}