You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.3 KiB
59 lines
1.3 KiB
---
|
|
|
|
- include: "os/{{ ansible_os_family }}.yml"
|
|
|
|
- name: check if docker is installed
|
|
command: which dockerd
|
|
register: which_dockerd
|
|
changed_when: False
|
|
ignore_errors: yes
|
|
|
|
- include: "install.yml"
|
|
when: upgrade_docker or (which_dockerd | failed)
|
|
|
|
- name: ensure config folder is present
|
|
file:
|
|
path: /etc/docker
|
|
state: directory
|
|
|
|
- name: ensure docker-py module is installed
|
|
pip:
|
|
name: docker-py
|
|
version: 1.9.0
|
|
when: dockerpy
|
|
|
|
- name: apply default daemon config
|
|
set_fact:
|
|
docker_json: "{{ default_docker_config | combine(docker_config | default({})) }}"
|
|
|
|
- name: configure docker clusterstore
|
|
set_fact:
|
|
docker_json: '{{ docker_json | combine({"cluster-store": "consul://{{ consul_ip }}:8500"})}}'
|
|
when: docker_clusterstore
|
|
|
|
- name: ensure daemon config file is present
|
|
template:
|
|
src: daemon.j2.json
|
|
dest: /etc/docker/daemon.json
|
|
notify:
|
|
- restart docker
|
|
|
|
- name: ensure unit file folder is present
|
|
file:
|
|
path: /usr/lib/systemd/system
|
|
state: directory
|
|
|
|
- name: ensure unit file is present & up to date
|
|
template:
|
|
src: docker.j2.service
|
|
dest: /usr/lib/systemd/system/docker.service
|
|
notify:
|
|
- restart docker
|
|
|
|
- meta: flush_handlers
|
|
|
|
- name: ensure starts on system boot
|
|
systemd:
|
|
name: docker
|
|
enabled: yes
|