mirror of
https://github.com/geerlingguy/ansible-role-docker.git
synced 2025-10-06 11:14:53 +02:00
61 lines
1.4 KiB
YAML
61 lines
1.4 KiB
YAML
---
|
|
- name: Ensure dockerd-rootless-setup.sh is installed
|
|
package:
|
|
name:
|
|
- uidmap
|
|
- docker-ce-rootless-extras
|
|
state: present
|
|
when: ansible_distribution != "CentOS"
|
|
|
|
- name: Ensure dockerd-rootless-setup.sh is installed
|
|
package:
|
|
name:
|
|
- shadow-utils
|
|
- docker-ce-rootless-extras
|
|
state: present
|
|
when: ansible_distribution == "CentOS"
|
|
|
|
- name: Stop any running root instances of docker daemon
|
|
service:
|
|
name: docker.service
|
|
state: stopped
|
|
enabled: false
|
|
|
|
- name: Close root docker socket
|
|
service:
|
|
name: docker.socket
|
|
state: stopped
|
|
enabled: false
|
|
|
|
- name: Remove docker.sock file
|
|
file:
|
|
path: /var/run/docker.sock
|
|
state: absent
|
|
|
|
- name: Modprobe ip_tables
|
|
modprobe:
|
|
name: ip_tables
|
|
|
|
- name: Install rootless docker
|
|
become: false
|
|
command: /usr/bin/dockerd-rootless-setuptool.sh install
|
|
when: rootless_conf.stat.exists == false
|
|
|
|
- name: Enable and start rootless docker
|
|
become: false
|
|
systemd:
|
|
name: docker.service
|
|
state: "{{ docker_service_state }}"
|
|
enabled: "{{ docker_service_enabled }}"
|
|
scope: user
|
|
ignore_errors: "{{ ansible_check_mode }}"
|
|
|
|
- name: Decouple rootless docker from user session
|
|
command: "loginctl enable-linger {{ ansible_user }}"
|
|
|
|
- name: Add DOCKER_HOST to systemwide environment file
|
|
lineinfile:
|
|
path: /etc/environment
|
|
insertafter: EOF
|
|
line: "DOCKER_HOST=unix://{{ lookup('env', 'XDG_RUNTIME_DIR') }}/docker.sock"
|