This commit is contained in:
135
2023-10-20 11:27:17 +03:00
commit 95b9886d8f
11 changed files with 233 additions and 0 deletions

34
tasks/main.yml Normal file
View File

@@ -0,0 +1,34 @@
---
# tasks file for docker
- include_tasks: setup-Debian.yml
when: ansible_distribution == 'Debian'
- name: ensures etc docker dir exists.
become: true
file:
path: "/etc/docker"
state: directory
- name: template docker related configs.
become: true
template:
src: "templates{{ tmpl }}.j2"
dest: "{{ tmpl }}"
owner: root
group: root
mode: 0644
loop:
- /etc/docker/daemon.json
# - /etc/rsyslog.d/00-docker-runtime.conf
# notify:
# - restart rsyslog.service
# - restart docker.service
loop_control:
loop_var: tmpl
- name: Install Docker packages.
become: true
package:
name: "{{ docker_packages }}"
state: "{{ docker_packages_state }}"
notify: restart docker.service

62
tasks/setup-Debian.yml Normal file
View File

@@ -0,0 +1,62 @@
---
- name: Ensure old versions of Docker are not installed.
become: true
package:
name:
- docker
- docker-engine
state: absent
- name: Ensure dependencies are installed.
become: true
apt:
name:
- apt-transport-https
- ca-certificates
state: present
when: docker_add_repo | bool
- name: Ensure additional dependencies are installed (on Ubuntu < 20.04 and any other systems).
become: true
apt:
name: gnupg2
state: present
when: ansible_distribution != 'Ubuntu' or ansible_distribution_version is version('20.04', '<')
- name: Ensure additional dependencies are installed (on Ubuntu >= 20.04).
become: true
apt:
name: gnupg
state: present
when: ansible_distribution == 'Ubuntu' and ansible_distribution_version is version('20.04', '>=')
- name: Add Docker apt key.
become: true
ansible.builtin.get_url:
url: "{{ docker_apt_gpg_key }}"
dest: /etc/apt/trusted.gpg.d/docker.asc
mode: '0644'
force: false
checksum: "{{ docker_apt_gpg_key_checksum | default(omit) }}"
register: add_repository_key
ignore_errors: "{{ docker_apt_ignore_key_error }}"
when: docker_add_repo | bool
- name: Ensure curl is present (on older systems without SNI).
become: true
package: name=curl state=present
when: add_repository_key is failed and docker_add_repo | bool
- name: Add Docker apt key (alternative for older systems without SNI).
become: true
shell: >
curl -sSL {{ docker_apt_gpg_key }} | apt-key add -
when: add_repository_key is failed and docker_add_repo | bool
- name: Add Docker repository.
become: true
apt_repository:
repo: "{{ docker_apt_repository }}"
state: present
update_cache: true
when: docker_add_repo | bool