Added webtrees
This commit is contained in:
@@ -17,8 +17,9 @@
|
||||
- ntfy
|
||||
- nextcloud
|
||||
- tautulli
|
||||
- name: gitea
|
||||
tags: test
|
||||
- gitea
|
||||
- unifi-controller
|
||||
- beets
|
||||
- navidrome
|
||||
- name: webtrees
|
||||
tags: test
|
||||
|
29
ansible/roles/webtrees/tasks/main.yml
Normal file
29
ansible/roles/webtrees/tasks/main.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
- name: Create service user
|
||||
user:
|
||||
name: "{{ role_name }}"
|
||||
system: true
|
||||
register: service_user
|
||||
become: true
|
||||
|
||||
- name: Create install directory
|
||||
file:
|
||||
path: "{{ install_directory }}/{{ role_name }}"
|
||||
state: directory
|
||||
owner: "{{ docker_user }}"
|
||||
mode: "{{ docker_compose_directory_mask }}"
|
||||
become: true
|
||||
|
||||
- name: Copy docker-compose file to destination
|
||||
template:
|
||||
src: docker-compose.yml
|
||||
dest: "{{ install_directory }}/{{ role_name }}/docker-compose.yml"
|
||||
owner: "{{ docker_user }}"
|
||||
mode: "{{ docker_compose_file_mask }}"
|
||||
validate: docker-compose -f %s config
|
||||
become: true
|
||||
|
||||
- name: Start docker container
|
||||
community.docker.docker_compose:
|
||||
project_src: "{{ install_directory }}/{{ role_name }}"
|
||||
pull: true
|
||||
remove_orphans: yes
|
50
ansible/roles/webtrees/templates/docker-compose.yml
Normal file
50
ansible/roles/webtrees/templates/docker-compose.yml
Normal file
@@ -0,0 +1,50 @@
|
||||
version: "{{ docker_compose_version }}"
|
||||
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|
||||
db:
|
||||
external: false
|
||||
|
||||
services:
|
||||
{{ role_name }}:
|
||||
container_name: "{{ role_name }}"
|
||||
image: ghcr.io/nathanvaughn/webtrees:latest
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- traefik
|
||||
- db
|
||||
environment:
|
||||
PRETTY_URLS: "1"
|
||||
BASE_URL: "https://ancestry.{{ personal_domain }}"
|
||||
DB_TYPE: "pgsql"
|
||||
DB_PORT: 5432
|
||||
DB_HOST: "db"
|
||||
DB_NAME: "webtrees"
|
||||
DB_USER: "webtrees"
|
||||
DB_PASSWORD: "webtrees"
|
||||
WT_USER: "mike"
|
||||
WT_PASS: "mike"
|
||||
WT_EMAIL: email@email.com
|
||||
volumes:
|
||||
- "{{ data_dir }}/{{ role_name }}/data:/var/www/webtrees/data"
|
||||
- "{{ data_dir }}/{{ role_name }}/media:/var/www/webtrees/media"
|
||||
labels:
|
||||
traefik.enable: true
|
||||
traefik.http.routers.{{ role_name }}.rule: "Host(`ancestry.{{ personal_domain }}`)"
|
||||
traefik.http.routers.{{ role_name }}.middlewares: lan-whitelist@file
|
||||
|
||||
db:
|
||||
image: lscr.io/linuxserver/mariadb:latest
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- db
|
||||
environment:
|
||||
TZ: {{ timezone }}
|
||||
MYSQL_DATABASE: webtrees
|
||||
MYSQL_USER: webtrees
|
||||
MYSQL_PASSWORD: webtrees
|
||||
MYSQL_ROOT_PASSWORD: webtrees
|
||||
volumes:
|
||||
- "{{ data_dir }}/mariadb/webtrees:/config"
|
||||
|
Reference in New Issue
Block a user