mirror of
https://github.com/KevinMidboe/playbooks-retailor.git
synced 2026-09-07 13:32:06 +00:00
umami analytics play & role
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
---
|
||||
docker_apt_arch: "{{ 'amd64' if ansible_architecture == 'x86_64' else 'arm64' }}"
|
||||
docker_packages:
|
||||
- docker-ce
|
||||
- docker-ce-cli
|
||||
- containerd.io
|
||||
- docker-buildx-plugin
|
||||
- docker-compose-plugin
|
||||
|
||||
docker_service_state: started
|
||||
docker_service_enabled: true
|
||||
@@ -0,0 +1,6 @@
|
||||
---
|
||||
- name: restart docker
|
||||
ansible.builtin.systemd:
|
||||
name: docker
|
||||
state: restarted
|
||||
daemon_reload: true
|
||||
@@ -0,0 +1,98 @@
|
||||
---
|
||||
- name: Ensure required system packages are present
|
||||
ansible.builtin.apt:
|
||||
name:
|
||||
- ca-certificates
|
||||
- curl
|
||||
- gnupg
|
||||
- lsb-release
|
||||
state: present
|
||||
update_cache: true
|
||||
cache_valid_time: 3600
|
||||
|
||||
- name: Ensure /etc/apt/keyrings directory exists
|
||||
ansible.builtin.file:
|
||||
path: /etc/apt/keyrings
|
||||
state: directory
|
||||
mode: "0755"
|
||||
|
||||
- name: Check if Docker GPG key already present
|
||||
ansible.builtin.stat:
|
||||
path: /etc/apt/keyrings/docker.asc
|
||||
register: docker_gpg_key
|
||||
|
||||
- name: Download Docker's official GPG key
|
||||
ansible.builtin.get_url:
|
||||
url: https://download.docker.com/linux/ubuntu/gpg
|
||||
dest: /etc/apt/keyrings/docker.asc
|
||||
mode: "0644"
|
||||
when: not docker_gpg_key.stat.exists
|
||||
|
||||
- name: Add Docker apt repository (deb822 format)
|
||||
ansible.builtin.deb822_repository:
|
||||
name: docker
|
||||
types: [deb]
|
||||
uris: "https://download.docker.com/linux/ubuntu"
|
||||
suites: "{{ ansible_distribution_release }}"
|
||||
components: [stable]
|
||||
architectures: "{{ docker_apt_arch }}"
|
||||
signed_by: /etc/apt/keyrings/docker.asc
|
||||
state: present
|
||||
register: docker_repo_added
|
||||
|
||||
- name: Update apt cache after adding Docker repo
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
when: docker_repo_added.changed
|
||||
|
||||
- name: Install Docker Engine and plugins
|
||||
ansible.builtin.apt:
|
||||
name: "{{ docker_packages }}"
|
||||
state: present
|
||||
notify: restart docker
|
||||
|
||||
- name: Ensure docker service is started and enabled
|
||||
ansible.builtin.systemd:
|
||||
name: docker
|
||||
state: "{{ docker_service_state }}"
|
||||
enabled: "{{ docker_service_enabled }}"
|
||||
|
||||
- name: Ensure docker group exists
|
||||
ansible.builtin.group:
|
||||
name: docker
|
||||
state: present
|
||||
|
||||
- name: Add user(s) to the docker group
|
||||
ansible.builtin.user:
|
||||
name: "{{ item }}"
|
||||
groups: docker
|
||||
append: true
|
||||
loop: "{{ docker_users_to_add }}"
|
||||
register: docker_group_added
|
||||
|
||||
- name: Notify about needing to re-login for group changes
|
||||
ansible.builtin.debug:
|
||||
msg: >-
|
||||
User '{{ item.item }}' was added to the docker group. They will need to
|
||||
log out and back in (or start a new SSH session) for this to take effect
|
||||
without using sudo for docker commands.
|
||||
loop: "{{ docker_group_added.results }}"
|
||||
when: item.changed
|
||||
|
||||
- name: Verify Docker is installed and working
|
||||
ansible.builtin.command: docker --version
|
||||
register: docker_version_output
|
||||
changed_when: false
|
||||
|
||||
- name: Show installed Docker version
|
||||
ansible.builtin.debug:
|
||||
msg: "{{ docker_version_output.stdout }}"
|
||||
|
||||
- name: Verify Docker Compose plugin is installed
|
||||
ansible.builtin.command: docker compose version
|
||||
register: docker_compose_version_output
|
||||
changed_when: false
|
||||
|
||||
- name: Show installed Docker Compose version
|
||||
ansible.builtin.debug:
|
||||
msg: "{{ docker_compose_version_output.stdout }}"
|
||||
Reference in New Issue
Block a user