Compare commits
4 Commits
207152124b
...
3e996c556a
Author | SHA1 | Date | |
---|---|---|---|
![]() |
3e996c556a | ||
![]() |
738f67859e | ||
![]() |
4346855fa8 | ||
![]() |
805fe0ddb8 |
@@ -12,7 +12,8 @@
|
||||
- overseerr
|
||||
- ntfy
|
||||
- gluetun
|
||||
- name: qbittorrent
|
||||
- qbittorrent
|
||||
- name: autobrr
|
||||
tags: test
|
||||
- nextcloud
|
||||
- redlib
|
||||
|
46
ansible/roles/autobrr/tasks/main.yml
Normal file
46
ansible/roles/autobrr/tasks/main.yml
Normal file
@@ -0,0 +1,46 @@
|
||||
- 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: "{{ docker_user }}"
|
||||
mode: "{{ docker_compose_directory_mask }}"
|
||||
become: true
|
||||
|
||||
- name: Install config file
|
||||
template:
|
||||
src: "config.toml"
|
||||
dest: "{{ data_dir }}/{{ role_name }}/config.toml"
|
||||
owner: "{{ service_user.uid }}"
|
||||
group: "{{ docker_user }}"
|
||||
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
|
8
ansible/roles/autobrr/templates/config.toml
Normal file
8
ansible/roles/autobrr/templates/config.toml
Normal file
@@ -0,0 +1,8 @@
|
||||
# config.toml
|
||||
|
||||
host = "0.0.0.0"
|
||||
|
||||
# Default: 7474
|
||||
port = 7474
|
||||
|
||||
sessionSecret = "7bae936f68b70a015b12b9b19a8a652a"
|
23
ansible/roles/autobrr/templates/docker-compose.yml
Normal file
23
ansible/roles/autobrr/templates/docker-compose.yml
Normal file
@@ -0,0 +1,23 @@
|
||||
version: "{{ docker_compose_version }}"
|
||||
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|
||||
|
||||
services:
|
||||
"{{ role_name }}":
|
||||
container_name: "{{ role_name }}"
|
||||
image: "ghcr.io/autobrr/autobrr:latest"
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- traefik
|
||||
user: "{{ service_user.uid }}:{{ service_user.uid }}"
|
||||
environment:
|
||||
- "TZ={{ timezone }}"
|
||||
volumes:
|
||||
- "{{ data_dir }}/{{ role_name }}:/config"
|
||||
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
|
||||
traefik.http.services.{{ role_name }}.loadbalancer.server.port: {{ service_port }}
|
10
ansible/roles/autobrr/vars/main.yml
Normal file
10
ansible/roles/autobrr/vars/main.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
service_port: 7474
|
||||
|
||||
session_secret: !vault |
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
37633531366164363734323934653137636663393533356434323936393932383036666361373733
|
||||
3430643961313935336130626431326564396534333262330a356165333437343462656533623366
|
||||
66303066353135616665323230633133633434343638346461646339666330366561643166393133
|
||||
3939636539393365660a386638393232646138313566323065376237643361383332336631396133
|
||||
66336339343363356162303330363431346137613263626139663666623937336638303530656561
|
||||
3236376239306261313232346537383264623461366565393839
|
@@ -46,6 +46,8 @@ services:
|
||||
depends_on:
|
||||
- qbittorrent
|
||||
image: ghcr.io/cross-seed/cross-seed:6
|
||||
ports:
|
||||
- "2468:2468"
|
||||
user: "{{ service_user.uid }}:{{ service_user.uid }}"
|
||||
volumes:
|
||||
- "{{ data_dir }}/cross-seed:/config"
|
||||
|
@@ -33,6 +33,7 @@ cat:
|
||||
movies.cross-seed: /data/torrents/movies
|
||||
tv: /data/torrents/tv
|
||||
tv.cross-seed: /data/torrents/tv
|
||||
music: /data/torrents/music
|
||||
cross-seed-link: /data/torrents/cross-seed
|
||||
|
||||
tracker:
|
||||
@@ -110,6 +111,10 @@ share_limits:
|
||||
include_any_tags:
|
||||
- Nyaa
|
||||
- AnimeTosho
|
||||
- rutracker
|
||||
categories:
|
||||
- movies
|
||||
- tv
|
||||
max_ratio: 2
|
||||
max_seeding_time: 21600 # 15 days
|
||||
cleanup: true
|
||||
|
@@ -7,7 +7,7 @@ networks:
|
||||
services:
|
||||
recyclarr:
|
||||
container_name: recyclarr
|
||||
image: ghcr.io/recyclarr/recyclarr:latest
|
||||
image: ghcr.io/recyclarr/recyclarr:7
|
||||
restart: unless-stopped
|
||||
user: "{{ service_user.uid }}:{{ service_user.uid }}"
|
||||
networks:
|
||||
|
Reference in New Issue
Block a user