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
# https://docs.docker.com/engine/install/debian/#install-using-the-repository
- name: Set up Docker
  hosts: lotus-land-story
  tasks:

    - name: Create Docker volume location
      ansible.builtin.file:
        path: /mnt/lotus-land-story/docker
        state: directory
        mode: "0755"

    - name: Get docker0 IP address
      ansible.builtin.shell: ip -4 -o addr show docker0 | awk '{print $4}' # noqa: risky-shell-pipe
      vars:
        executable: /usr/bin/bash
      register: docker_ip
      changed_when: docker_ip.rc != 0

    - name: Save docker_ip fact
      ansible.builtin.set_fact:
        docker_ip:
          cidr: "{{ docker_ip.stdout }}"
          address: "{{ docker_ip.stdout | ansible.utils.ipaddr('address') }}"

    - name: Configure Docker daemon
      ansible.builtin.template:
        src: templates/daemon.json
        dest: /etc/docker/daemon.json
        mode: "0644"
      notify: Restart docker

    - name: Create docker network
      community.docker.docker_network:
        name: lotus_land_story

  handlers:
    - name: Import restarts
      ansible.builtin.import_tasks: restarts.yml

# vim: ft=yaml.ansible