Added gitea

This commit is contained in:
Mike Wilson
2023-02-22 11:40:42 -05:00
parent 0ae1c4c56b
commit 92f4289d7d
5 changed files with 138 additions and 0 deletions

View File

@@ -16,3 +16,5 @@
- overseerr
- ntfy
- nextcloud
- tautulli
- gitea

View File

@@ -0,0 +1,38 @@
- 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: Create config directory
file:
path: "{{ data_dir }}/{{ role_name }}"
state: directory
owner: "{{ service_user.uid }}"
group: "{{ service_user.uid }}"
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

View File

@@ -0,0 +1,46 @@
version: "{{ docker_compose_version }}"
networks:
traefik:
external: true
default:
external: false
services:
gitea:
container_name: gitea
image: gitea/gitea:latest
restart: unless-stopped
depends_on:
- db
networks:
- traefik
- default
environment:
- "USER_UID={{ service_user.uid }}"
- "USER_GID={{ service_user.uid }}"
- GITEA_database__DB_TYPE=postgres
- GITEA_database__HOST=db:5432
- GITEA_database__NAME=gitea
- GITEA_database__USER=gitea
- GITEA_database__PASSWD=gitea
volumes:
- "{{ data_dir }}/gitea:/data"
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
labels:
traefik.enable: true
traefik.http.routers.gitea.rule: "Host(`git.{{ personal_domain }}`)"
traefik.http.services.gitea.loadbalancer.server.port: 3000
db:
image: postgres:14-alpine
restart: unless-stopped
networks:
- default
environment:
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD=gitea
- POSTGRES_DB=gitea
volumes:
- "{{ data_dir }}/postgres/gitea:/var/lib/postgresql/data"

View 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

View File

@@ -0,0 +1,23 @@
version: "{{ docker_compose_version }}"
networks:
traefik:
external: true
services:
tautulli:
container_name: "tautulli"
image: lscr.io/linuxserver/tautulli:latest
restart: unless-stopped
networks:
- traefik
environment:
- "PUID={{ service_user.uid }}"
- "PGID={{ service_user.uid }}"
- "TZ={{ timezone }}"
volumes:
- "{{ data_dir }}/{{ role_name }}:/config"
labels:
traefik.enable: true
traefik.http.routers.tautulli.rule: "Host(`tautulli.local.{{ personal_domain }}`)"
traefik.http.routers.tautulli.middlewares: ip-whitelist@file