xoxys.docker_engine/tasks/install.yml

71 lines
2.2 KiB
YAML

---
- block:
- name: Install docker engine
package:
name: "{{ dockerengine_package }}"
state: installed
- name: Install dependencies
package:
name: "{{ item }}"
state: installed
loop: "{{ dockerengine_dependencies }}"
- name: Install python dependencies
pip:
name:
- docker
- docker-compose
- name: Add docker group
group:
name: docker
state: present
notify: __docker_restart
when: dockerengine_docker_group_enabled | bool
- name: Deploy config files to setup environment
template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: root
group: root
mode: 0644
with_items:
- { src: 'etc/sysconfig/docker.j2', dest: '/etc/sysconfig/{{ dockerengine_package }}' }
- { src: 'etc/sysconfig/docker-storage-setup.j2', dest: '/etc/sysconfig/{{ dockerengine_package }}-storage-setup' }
- { src: 'etc/containers/registries.conf.j2', dest: '/etc/containers/registries.conf' }
loop_control:
label: "{{ item.dest }}"
notify: __docker_restart
- name: Add namespace group
group:
name: "{{ dockerengine_nsremap_user }}"
state: "{{ 'present' if dockerengine_usernamespace_enabled | bool else 'absent' }}"
- name: Add namespace user
user:
name: "{{ dockerengine_nsremap_user }}"
group: "{{ dockerengine_nsremap_user }}"
shell: /sbin/nologin
state: "{{ 'present' if dockerengine_usernamespace_enabled | bool else 'absent' }}"
- name: Configure namespace id range
lineinfile:
dest: "{{ item }}"
regexp: "^{{ dockerengine_nsremap_user }}:"
line: "{{ dockerengine_nsremap_user }}:{{ dockerengine_nsremap_range_start }}:{{ dockerengine_nsremap_range_length }}"
state: "{{ 'present' if dockerengine_usernamespace_enabled | bool else 'absent' }}"
loop:
- /etc/subuid
- /etc/subgid
- name: Ensure docker engine is up and running
service:
name: "{{ dockerengine_package }}"
enabled: True
state: started
become: True
become_user: root