Migration to newer dockge/compose stack

This commit is contained in:
Colin Hebert
2024-09-26 15:59:37 +02:00
parent 1d52e2ac75
commit dfe252e945
104 changed files with 752 additions and 666 deletions

116
torrents/compose.yaml Normal file
View File

@@ -0,0 +1,116 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json
x-qbittorrent: &a1
extends:
file: ../compose.base.yaml
service: exposed-service
image: hotio/qbittorrent
environment:
PUID: ${NASCOMPOSE_UID?}
PGID: ${NASCOMPOSE_GID?}
VPN_ENABLED: true
VPN_CONF: wg0-fix
VPN_PROVIDER: ${TORRENT_VPN?}
VPN_LAN_NETWORK: 192.168.0.0/23
VPN_AUTO_PORT_FORWARD: true
VPN_KEEP_LOCAL_DNS: true
VPN_FIREWALL_TYPE: legacy
cap_add:
- NET_ADMIN
sysctls:
net.ipv4.conf.all.src_valid_mark: 1
networks:
- torrents
dns:
- 1.1.1.1
- 1.0.0.1
x-qbitmanage: &a2
extends:
file: ../compose.base.yaml
service: base-service
image: bobokun/qbit_manage
user: ${NASCOMPOSE_UID?}:${NASCOMPOSE_GID?}
environment:
QBT_SCHEDULE: 30
QBT_WIDTH: 170
networks:
- torrents
services:
qbittorrent:
<<: *a1
container_name: qbittorrent
volumes:
- ./volumes/qbittorrent_config/:/config/
- ${NASCOMPOSE_DATA?}/torrents/:/data/torrents/
- ./config/99-cron-start:/etc/cont-init.d/99-cron-start:ro
- ./config/updateMaMIP:/etc/periodic/hourly/updateMaMIP:ro
- ./secrets/wg0.conf:/config/wireguard/wg0-fix.conf:ro
labels:
traefik.http.routers.qbittorrent.middlewares: authelia@file
qbitmanage:
<<: *a2
container_name: qbitmanage
volumes:
- ./volumes/qbitmanage_config/:/config/
- ./volumes/qbittorrent_config/data/BT_backup/:/torrents/:ro
- ${NASCOMPOSE_DATA?}/torrents/:/data/torrents/
cross-seed:
extends:
file: ../compose.base.yaml
service: base-service
container_name: cross-seed
image: crossseed/cross-seed:master
user: ${NASCOMPOSE_UID?}:${NASCOMPOSE_GID?}
networks:
- torrents
#- indexer
dns:
- 1.1.1.1
- 1.0.0.1
volumes:
- ./volumes/cross-seed_config/:/config/
- ./volumes/qbittorrent_config/data/BT_backup/:/torrents/:ro
- ${NASCOMPOSE_DATA?}/:/data/
command: daemon
unpackerr:
extends:
file: ../compose.base.yaml
service: base-service
container_name: unpackerr
image: golift/unpackerr
user: ${NASCOMPOSE_UID?}:${NASCOMPOSE_GID?}
networks:
- torrents
volumes:
- ./volumes/unpackerr_config/:/etc/unpackerr/
- ${NASCOMPOSE_DATA?}/torrents/completed/:/data/torrents/completed/
qbittorrent-seeding:
<<: *a1
container_name: qbittorrent-seeding
profiles:
- torrents-seeding
volumes:
- ./volumes/qbittorrent-seeding_config/:/config/
- ${NASCOMPOSE_DATA?}/torrents-seeding/:/data/torrents/
- ./config/99-cron-start:/etc/cont-init.d/99-cron-start:ro
- ./config/updateMaMIP:/etc/periodic/hourly/updateMaMIP:ro
- ./secrets/wg0-seeding.conf:/config/wireguard/wg0-fix.conf:ro
labels:
traefik.http.routers.qbittorrent-seeding.middlewares: authelia@file
qbitmanage-seeding:
<<: *a2
container_name: qbitmanage-seeding
profiles:
- torrents-seeding
volumes:
- ./volumes/qbitmanage-seeding_config/:/config/
- ./volumes/qbittorrent-seeding_config/data/BT_backup/:/torrents/:ro
- ${NASCOMPOSE_DATA?}/torrents-seeding/:/data/torrents/
networks:
torrents:
name: torrents
reverse-proxy:
external: true
# indexer:
# external: true

View File

@@ -1,11 +0,0 @@
#!/command/with-contenv bash
echo "Allow DNS resolution locally"
iptables -A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
echo "Allow docker networks to connect"
docker_cirds=$(ip -o -4 route show proto kernel | awk '{print $1}')
for cidr in $docker_cirds; do
iptables -A INPUT -s "${cidr}" -d "${cidr}" -j ACCEPT
iptables -A OUTPUT -s "${cidr}" -d "${cidr}" -j ACCEPT
done

View File

@@ -1,4 +1,3 @@
#!/command/with-contenv bash
(crontab -l ; echo "* * * * * run-parts /etc/periodic/1min") | sort - | uniq - | crontab -
crond

View File

@@ -1,102 +0,0 @@
name: torrents${TORRENT_SUFFIX?TORRENT_SUFFIX variable required}
services:
qbittorrent:
# Set hostname to "SERVICE-main" if not suffix is provided. This avoids collisions with other instances using the service name as hostname (default on compose)
hostname: qbittorrent${TORRENT_SUFFIX:--main}
image: hotio/qbittorrent
environment:
PUID: ${NASCOMPOSE_UID?}
PGID: ${NASCOMPOSE_GID?}
VPN_ENABLED: true
VPN_CONF: wg0-fix
VPN_PROVIDER: ${TORRENT_VPN?}
VPN_LAN_NETWORK: 192.168.0.0/23
VPN_AUTO_PORT_FORWARD: true
VPN_KEEP_LOCAL_DNS: true
VPN_FIREWALL_TYPE: legacy
cap_add:
- NET_ADMIN
sysctls:
net.ipv4.conf.all.src_valid_mark: 1
networks:
- reverse-proxy
- torrents
dns:
- 1.1.1.1
- 1.0.0.1
volumes:
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/volumes/qbittorrent_config/:/config/
- ${NASCOMPOSE_DATA?}/torrents${TORRENT_SUFFIX?}/:/data/torrents/
# Configuration
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/config/98-gateway-setup:/etc/cont-init.d/98-gateway-setup:ro
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/config/99-cron-start:/etc/cont-init.d/99-cron-start:ro
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/config/updateMaMIP:/etc/periodic/hourly/updateMaMIP:ro
# Secrets
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/secrets/wg0.conf:/config/wireguard/wg0-fix.conf:ro
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.http.routers.qbittorrent${TORRENT_SUFFIX?}.rule=Host(`qbittorrent${TORRENT_SUFFIX?}.${NASCOMPOSE_DOMAIN?}`)
- traefik.http.routers.qbittorrent${TORRENT_SUFFIX?}.middlewares=authelia@file
# API access for nzb360
- traefik.http.routers.qbittorrent${TORRENT_SUFFIX?}-api.rule=Host(`qbittorrent${TORRENT_SUFFIX?}-api.${NASCOMPOSE_DOMAIN?}`)
- traefik.http.routers.qbittorrent${TORRENT_SUFFIX?}-api.middlewares=authelia-basic@file
cross-seed:
# Set hostname to "SERVICE-main" if not suffix is provided. This avoids collisions with other instances using the service name as hostname (default on compose)
hostname: cross-seed${TORRENT_SUFFIX:--main}
image: crossseed/cross-seed:master
profiles: [ "torrents${TORRENT_SUFFIX?}-xseed" ]
user: ${NASCOMPOSE_UID?}:${NASCOMPOSE_GID?}
networks:
- torrents
#- indexer
dns:
- 1.1.1.1
- 1.0.0.1
volumes:
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/volumes/cross-seed_config/:/config/
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/volumes/qbittorrent_config/data/BT_backup/:/torrents/:ro
- ${NASCOMPOSE_DATA?}/:/data/
command: daemon
restart: unless-stopped
qbitmanage:
# Set hostname to "SERVICE-main" if not suffix is provided. This avoids collisions with other instances using the service name as hostname (default on compose)
hostname: qbitmanage${TORRENT_SUFFIX:--main}
image: bobokun/qbit_manage
user: ${NASCOMPOSE_UID?}:${NASCOMPOSE_GID?}
environment:
QBT_SCHEDULE: 30
QBT_WIDTH: 170
networks:
- torrents
volumes:
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/volumes/qbitmanage_config/:/config/
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/volumes/qbittorrent_config/data/BT_backup/:/torrents/:ro
- ${NASCOMPOSE_DATA?}/torrents${TORRENT_SUFFIX?}/:/data/torrents/
restart: unless-stopped
unpackerr:
# Set hostname to "SERVICE-main" if not suffix is provided. This avoids collisions with other instances using the service name as hostname (default on compose)
hostname: unpackerr{TORRENT_SUFFIX:--main}
image: golift/unpackerr
profiles: [ "torrents${TORRENT_SUFFIX?}-unpackerr" ]
user: ${NASCOMPOSE_UID?}:${NASCOMPOSE_GID?}
networks:
- torrents
volumes:
- ${NASCOMPOSE_SERVICES?}/torrents${TORRENT_SUFFIX?}/volumes/unpackerr_config/:/etc/unpackerr/
- ${NASCOMPOSE_DATA?}/torrents${TORRENT_SUFFIX?}/completed/:/data/torrents/completed/
restart: unless-stopped
networks:
torrents:
name: torrents${TORRENT_SUFFIX?}
reverse-proxy:
external: true
# indexer:
# external: true

View File