--- - hosts: misc tasks: - name: Add users for running containers become: yes ansible.builtin.user: name: "{{ item.name }}" uid: "{{ item.uid }}" create_home: no state: present loop: - name: jupyter uid: 42000 state: present - name: gitea uid: 42001 state: present # All services that are behind Caddy need to be in this network - name: Create Caddy network become: yes docker_network: name: caddy-network state: present - name: Upload docker configuration become: yes copy: src: ../../docker dest: /etc/pbri # Files should inaccessible to non-root users. mode: u=rw,g=,o= # Directories should be listable directory_mode: u=rwx,g=rx,o=rx - name: Create directory for docker volumes become: yes file: path: /var/lib/pbri/docker state: directory # Hide contents from non-root users mode: u=rwx,g=,o= - name: Set up docker stuff become: yes docker_compose: project_src: "/etc/pbri/docker/{{ item.name }}" state: "{{ item.state }}" build: yes debug: yes loop: - name: caddy state: present - name: gitea state: present - name: drone state: present - name: codi state: present - name: Add Notebooks folder become: yes ansible.builtin.file: path: /home/jupyter/Notebooks owner: jupyter group: jupyter state: directory mode: 0755