infrastructure/ansible/playbooks/misc-docker.yaml
Paul Brinkmeier 404087a8b0 Use hedgedoc instead of hackmd
Use pad.pbrinkmeier.de instead of codi.pbrinkmeier.de
2022-10-25 15:24:12 +02:00

84 lines
2.2 KiB
YAML

---
- name: Update Docker configuration on shamash
hosts: misc
tasks:
- name: Add users for running containers
become: true
ansible.builtin.user:
name: "{{ item.name }}"
uid: "{{ item.uid }}"
create_home: false
state: present
loop:
- name: jupyter
uid: 42000
state: present
- name: gitea
uid: 42001
state: present
- name: factorio
uid: 845
state: present
- name: hackmd
uid: 1500
state: present
- name: hedgedoc
uid: 10000
state: present
# All services that are behind Caddy need to be in this network
- name: Create Caddy network
become: true
docker_network:
name: caddy-network
state: present
- name: Upload docker configuration
become: true
ansible.builtin.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: true
ansible.builtin.file:
path: /var/lib/pbri/docker
state: directory
# Hide contents from non-root users
mode: u=rwx,g=,o=
- name: Add Notebooks folder
become: true
ansible.builtin.file:
path: /home/jupyter/Notebooks
owner: jupyter
group: jupyter
state: directory
mode: 0755
- name: Create Factorio data folder
become: true
ansible.builtin.file:
path: /var/lib/pbri/docker/factorio
state: directory
owner: factorio
group: factorio
mode: u=rwx,g=,o=
- name: Set up docker stuff
become: true
docker_compose:
project_src: "/etc/pbri/docker/{{ item.name }}"
state: "{{ item.state }}"
build: true
debug: true
loop:
- name: caddy
state: present
- name: gitea
state: present
- name: drone
state: present
- name: codi
state: present
- name: factorio
state: present