Compare commits
5
Commits
gitea-runner
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
70ebfb54a2 | ||
|
|
3ed4c08865 | ||
|
|
78e3032637 | ||
|
|
f82c3b8a00 | ||
|
|
47b19f9945 |
No files matched your search
@@ -15,6 +15,7 @@ services:
|
|||||||
- "{{ data_dir }}/{{ role_name }}/config:/config"
|
- "{{ data_dir }}/{{ role_name }}/config:/config"
|
||||||
- "{{ data_dir }}/{{ role_name }}/metadata:/metadata"
|
- "{{ data_dir }}/{{ role_name }}/metadata:/metadata"
|
||||||
- "{{ media_storage_mnt }}/data/media/books:/books:ro"
|
- "{{ media_storage_mnt }}/data/media/books:/books:ro"
|
||||||
|
- "{{ media_storage_mnt }}/data/media/podcasts:/podcasts"
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: true
|
traefik.enable: true
|
||||||
traefik.http.routers.{{ role_name }}.rule: "Host(`audiobooks.{{ personal_domain }}`)"
|
traefik.http.routers.{{ role_name }}.rule: "Host(`audiobooks.{{ personal_domain }}`)"
|
||||||
|
|||||||
@@ -0,0 +1,40 @@
|
|||||||
|
- name: Create service user
|
||||||
|
user:
|
||||||
|
name: "{{ role_name }}"
|
||||||
|
groups: "{{ media_group }}"
|
||||||
|
append: yes
|
||||||
|
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: "{{ docker_user }}"
|
||||||
|
group: "{{ 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_v2:
|
||||||
|
project_src: "{{ install_directory }}/{{ role_name }}"
|
||||||
|
pull: always
|
||||||
|
remove_orphans: yes
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
networks:
|
||||||
|
traefik:
|
||||||
|
external: true
|
||||||
|
starr:
|
||||||
|
external: true
|
||||||
|
|
||||||
|
services:
|
||||||
|
{{ role_name }}:
|
||||||
|
container_name: "{{ role_name }}"
|
||||||
|
image: chaptarr/chaptarr:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- traefik
|
||||||
|
- starr
|
||||||
|
environment:
|
||||||
|
- "PUID={{ service_user.uid }}"
|
||||||
|
- "PGID={{ media_gid }}"
|
||||||
|
- "TZ={{ timezone }}"
|
||||||
|
- "UMASK=002"
|
||||||
|
volumes:
|
||||||
|
- "{{ data_dir }}/{{ role_name }}:/config"
|
||||||
|
- "{{ media_storage_mnt }}/data:/data"
|
||||||
|
labels:
|
||||||
|
traefik.enable: true
|
||||||
|
traefik.http.routers.{{ role_name }}.rule: "Host(`{{ role_name }}.local.{{ personal_domain }}`)"
|
||||||
|
traefik.http.routers.{{ role_name }}.middlewares: lan-whitelist@file
|
||||||
@@ -19,7 +19,6 @@ module.exports = {
|
|||||||
"http://prowlarr.local.{{ personal_domain }}/30/api?apikey={{ prowlarr_api_key }}", // DocsPedia
|
"http://prowlarr.local.{{ personal_domain }}/30/api?apikey={{ prowlarr_api_key }}", // DocsPedia
|
||||||
"http://prowlarr.local.{{ personal_domain }}/31/api?apikey={{ prowlarr_api_key }}", // OnlyEncodes+
|
"http://prowlarr.local.{{ personal_domain }}/31/api?apikey={{ prowlarr_api_key }}", // OnlyEncodes+
|
||||||
"http://prowlarr.local.{{ personal_domain }}/32/api?apikey={{ prowlarr_api_key }}", // Anthelion
|
"http://prowlarr.local.{{ personal_domain }}/32/api?apikey={{ prowlarr_api_key }}", // Anthelion
|
||||||
"http://prowlarr.local.{{ personal_domain }}/33/api?apikey={{ prowlarr_api_key }}", // OldToonsWorld
|
|
||||||
"http://prowlarr.local.{{ personal_domain }}/34/api?apikey={{ prowlarr_api_key }}", // Zenith
|
"http://prowlarr.local.{{ personal_domain }}/34/api?apikey={{ prowlarr_api_key }}", // Zenith
|
||||||
],
|
],
|
||||||
|
|
||||||
@@ -33,7 +32,8 @@ module.exports = {
|
|||||||
torrentClients: ["qbittorrent:https://qui.local.{{ personal_domain }}/proxy/{{ qui_crossseed_api_key }}"],
|
torrentClients: ["qbittorrent:https://qui.local.{{ personal_domain }}/proxy/{{ qui_crossseed_api_key }}"],
|
||||||
sonarr: ["https://sonarr.local.{{ personal_domain }}/?apikey={{ sonarr_api_key }}"],
|
sonarr: ["https://sonarr.local.{{ personal_domain }}/?apikey={{ sonarr_api_key }}"],
|
||||||
radarr: ["https://radarr.local.{{ personal_domain }}/?apikey={{ radarr_api_key }}"],
|
radarr: ["https://radarr.local.{{ personal_domain }}/?apikey={{ radarr_api_key }}"],
|
||||||
seasonsFromEpisodes: 0.8,
|
includeSingleEpisodes: false, // autobrr announce and webhook on completion will still grab single episodes
|
||||||
|
seasonsFromEpisodes: 0.7,
|
||||||
matchMode: "partial",
|
matchMode: "partial",
|
||||||
linkDirs: ["/data/torrents/cross-seed"],
|
linkDirs: ["/data/torrents/cross-seed"],
|
||||||
linkType: "hardlink",
|
linkType: "hardlink",
|
||||||
|
|||||||
Reference in new issue
Block a user