Update playbooks/install-standard-docker.yml
This commit is contained in:
@@ -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 %}
|
||||
|
||||
Reference in New Issue
Block a user