refactor
This commit is contained in:
53
ansible/tasks/global/docker.yml
Normal file
53
ansible/tasks/global/docker.yml
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
- name: Check if Docker CE is installed
|
||||
ansible.builtin.command: docker --version
|
||||
register: docker_check
|
||||
changed_when: false
|
||||
failed_when: false
|
||||
|
||||
# Arch-based distributions (CachyOS, Arch Linux, etc.)
|
||||
- name: Install Docker on Arch-based systems
|
||||
community.general.pacman:
|
||||
name:
|
||||
- docker
|
||||
- docker-compose
|
||||
- docker-buildx
|
||||
state: present
|
||||
become: true
|
||||
when: docker_check.rc != 0 and ansible_pkg_mgr == 'pacman'
|
||||
|
||||
# Non-Arch distributions
|
||||
- name: Download Docker installation script
|
||||
ansible.builtin.get_url:
|
||||
url: https://get.docker.com
|
||||
dest: /tmp/get-docker.sh
|
||||
mode: "0755"
|
||||
when: docker_check.rc != 0 and ansible_pkg_mgr != 'pacman'
|
||||
|
||||
- name: Install Docker CE on non-Arch systems
|
||||
ansible.builtin.shell: bash -c 'set -o pipefail && sh /tmp/get-docker.sh'
|
||||
args:
|
||||
executable: /bin/bash
|
||||
creates: /usr/bin/docker
|
||||
when: docker_check.rc != 0 and ansible_pkg_mgr != 'pacman'
|
||||
|
||||
- name: Add user to docker group
|
||||
ansible.builtin.user:
|
||||
name: "{{ ansible_user }}"
|
||||
groups: docker
|
||||
append: true
|
||||
become: true
|
||||
when: docker_check.rc != 0
|
||||
|
||||
- name: Enable and start docker service
|
||||
ansible.builtin.systemd:
|
||||
name: docker
|
||||
state: started
|
||||
enabled: true
|
||||
become: true
|
||||
|
||||
- name: Reload systemd
|
||||
ansible.builtin.systemd:
|
||||
daemon_reload: true
|
||||
become: true
|
||||
notify: Reload systemd
|
||||
Reference in New Issue
Block a user