aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/roles/docker/tasks/main.yml
blob: 9d0eeb65b973a404f81f324f5b20fb7ad63f7f27 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
- name: Get host distro
  ansible.builtin.setup:
    gather_subset:
      - distribution
      - distribution_release

- name: Set platform-specific variables
  loop:
    - "{{ ansible_facts['distribution'] }}.yml"
    - "{{ ansible_facts['distribution'] }}_{{ ansible_facts['distribution_release'] }}.yml"
  vars:
    __docker_vars_file: '{{ role_path }}/vars/{{ item }}'
  when: __docker_vars_file is exists
  ansible.builtin.include_vars: '{{ __docker_vars_file }}'

- name: Configure Docker logging driver
  when: docker_logging_driver is defined and docker_logging_driver != false
  ansible.builtin.include_tasks: logging.yml

- name: Install Docker
  become: true
  ansible.builtin.package:
    name: '{{ docker_package_names }}'
    state: present

# The docker system prune call should be before configuring the service and
# socket, otherwise the service could be woken up.
- name: Prune Docker data
  ansible.builtin.import_tasks: prune.yml

- name: Configure Docker service
  become: true
  ansible.builtin.systemd_service:
    name: docker.service
    enabled: '{{ docker_enable_service }}'
    state: "{{ docker_enable_service | ternary('started', 'stopped') }}"

- name: Configure Docker socket
  become: true
  ansible.builtin.systemd_service:
    name: docker.socket
    enabled: '{{ docker_enable_socket }}'
    state: "{{ docker_enable_socket | ternary('started', 'stopped') }}"

- name: Add user to Docker group
  when: docker_add_to_group
  become: true
  ansible.builtin.user:
    append: true
    groups: docker
    name: '{{ ansible_user }}'