SHA256
1
0
Files
deploy/roles/quadlets/qbittorrent.yml

163 lines
7.1 KiB
YAML

quadlets:
- name: qbittorrent
type: build
image: localhost/qbittorrent:latest
pull: missing
format: oci
force_rm: true
container_file: |
FROM {{ alpine_base_image }}
LABEL maintainer="{{ maintainer }}"
RUN apk add --no-cache \
-X "{{ alpine_mirror }}/v{{ alpine_base_image.split(':')[-1] }}/main" \
-X "{{ alpine_mirror }}/v{{ alpine_base_image.split(':')[-1] }}/community" \
qbittorrent-nox \
&& mkdir -p /app \
&& ln -s /usr/bin/qbittorrent-nox /app/qbittorrent-nox
WORKDIR /app
- name: qbittorrent
type: container
image: localhost/qbittorrent:latest
volumes:
- "{{ config_root }}/qbittorrent:/config:Z"
- "{{ download_root }}/htpc:/downloads:z"
- "{{ monitor_root }}/torrents:/torrents:Z"
env:
TZ: "{{ tz }}"
command:
- "qbittorrent-nox"
- "--profile=/config"
restart_policy: on-failure
configs:
- path: "{{ config_root }}/qbittorrent/config/qBittorrent.conf"
template: |
[Application]
FileLogger\Age=1
FileLogger\AgeType=1
FileLogger\Backup=true
FileLogger\DeleteOld=true
FileLogger\Enabled=false
FileLogger\MaxSizeBytes=66560
FileLogger\Path=/config/qBittorrent/data/logs
MemoryWorkingSetLimit=2048
[AutoRun]
OnTorrentAdded\Enabled=false
OnTorrentAdded\Program=
enabled=false
program=
[BitTorrent]
MergeTrackersEnabled={{ qbittorrent_merge_trackers | default(false) | lower }}
Session\AddExtensionToIncompleteFiles=true
Session\AddTorrentStopped=false
Session\AddTrackersEnabled={{ qbittorrent_add_trackers | default(false) | lower }}
Session\AdditionalTrackers={{ qbittorrent_additional_trackers | default('') }}
Session\AlternativeGlobalDLSpeedLimit={{ qbittorrent_alt_dl_limit | default(0) }}
Session\AlternativeGlobalUPSpeedLimit={{ qbittorrent_alt_up_limit | default(0) }}
Session\AnonymousModeEnabled={{ qbittorrent_anonymous_mode | default(true) | lower }}
Session\DefaultSavePath={{ qbittorrent_complete_dir | default('/downloads/complete') }}
Session\DisableAutoTMMByDefault=false
Session\DisableAutoTMMTriggers\CategorySavePathChanged=false
Session\DisableAutoTMMTriggers\DefaultSavePathChanged=false
Session\ExcludedFileNames=
Session\GlobalDLSpeedLimit={{ qbittorrent_dl_limit | default(0) }}
Session\GlobalMaxRatio={{ qbittorrent_max_ratio | default(1) }}
Session\GlobalMaxSeedingMinutes={{ qbittorrent_max_seed_minutes | default(0) }}
Session\GlobalUPSpeedLimit={{ qbittorrent_ul_limit | default(300) }}
Session\IgnoreLimitsOnLAN=true
Session\IgnoreSlowTorrentsForQueueing=true
Session\MaxActiveDownloads={{ qbittorrent_max_active_downloads | default(0) }}
Session\MaxActiveTorrents={{ qbittorrent_max_active_torrents | default(0) }}
Session\Port={{ qbittorrent_session_port | default(48442) }}
Session\QueueingSystemEnabled={{ qbittorrent_queueing_enabled | default(false) | lower }}
Session\SSL\Port={{ qbittorrent_ssl_port | default('11192') }}
Session\ShareLimitAction={{ qbittorrent_share_limit_action | default('Stop') }}
Session\TempPath={{ qbittorrent_temp_dir | default('/downloads/incomplete/qbittorrent') }}
Session\TempPathEnabled=true
Session\UseAlternativeGlobalSpeedLimit=true
[Core]
AutoDeleteAddedTorrentFile=IfAdded
[LegalNotice]
Accepted=true
[Meta]
MigrationVersion=8
[Network]
Cookies=@Invalid()
Proxy\HostnameLookupEnabled=false
Proxy\Profiles\BitTorrent=true
Proxy\Profiles\Misc=true
Proxy\Profiles\RSS=true
[Preferences]
Advanced\AnonymousMode={{ qbittorrent_anonymous_mode | default(true) | lower }}
Advanced\RecheckOnCompletion={{ qbittorrent_recheck_on_completion | default(false) | lower }}
Advanced\trackerPort={{ qbittorrent_tracker_port | default(9000) }}
Advanced\trackerPortForwarding=false
Bittorrent\MaxRatio={{ qbittorrent_max_ratio | default(1) }}
Connection\GlobalDLLimitAlt={{ qbittorrent_global_dl_limit_alt | default(0) }}
Connection\GlobalUPLimitAlt={{ qbittorrent_global_up_limit_alt | default(0) }}
Connection\PortRangeMin={{ qbittorrent_port_range_min | default(48442) }}
Connection\ResolvePeerCountries=true
Downloads\SavePath={{ qbittorrent_complete_dir | default('/downloads/complete') }}
Downloads\ScanDirsLastPath={{ qbittorrent_scan_dir | default('/torrents') }}
Downloads\ScanDirsV2=@Variant(\0\0\0\x1c\0\0\0\0)
Downloads\TempPath={{ qbittorrent_temp_dir | default('/downloads/incomplete/qbittorrent') }}
Downloads\TempPathEnabled=true
Downloads\UseIncompleteExtension=true
DynDNS\DomainName=changeme.dyndns.org
DynDNS\Enabled=false
DynDNS\Password=
DynDNS\Service=DynDNS
DynDNS\Username=
General\Locale={{ qbittorrent_locale | default('en') }}
MailNotification\email=
MailNotification\enabled=false
MailNotification\password=
MailNotification\req_auth=true
MailNotification\req_ssl=false
MailNotification\sender=qBittorrent_notification@example.com
MailNotification\smtp_server=smtp.changeme.com
MailNotification\username=
Queueing\IgnoreSlowTorrents=true
Queueing\MaxActiveDownloads={{ qbittorrent_max_active_downloads | default(20) }}
Queueing\MaxActiveTorrents={{ qbittorrent_max_active_torrents | default(20) }}
Queueing\QueueingEnabled=true
WebUI\Address={{ qbittorrent_host | default('') }}
WebUI\AlternativeUIEnabled=false
WebUI\AuthSubnetWhitelist={{ qbittorrent_subnet_whitelist | default('') }}
WebUI\AuthSubnetWhitelistEnabled=true
WebUI\BanDuration=3600
WebUI\CSRFProtection=true
WebUI\ClickjackingProtection=true
WebUI\CustomHTTPHeaders=
WebUI\CustomHTTPHeadersEnabled=false
WebUI\Enabled=true
WebUI\HTTPS\CertificatePath={{ qbittorrent_https_cert | default('/config/qBittorrent/config/ssl/server.crt') }}
WebUI\HTTPS\Enabled={{ qbittorrent_enable_https | default(false) | lower }}
WebUI\HTTPS\KeyPath={{ qbittorrent_https_key | default('/config/qBittorrent/config/ssl/server.key') }}
WebUI\HostHeaderValidation=false
WebUI\LocalHostAuth=false
WebUI\MaxAuthenticationFailCount=5
WebUI\Password_PBKDF2="{{ qbittorrent_password_pbkdf2 | default('') }}"
WebUI\Password_ha1={{ qbittorrent_password_ha1 | default('') }}
WebUI\Port={{ qbittorrent_ui_port | default(8082) }}
WebUI\ReverseProxySupportEnabled=false
WebUI\RootFolder=
WebUI\SecureCookie=true
WebUI\ServerDomains={{ qbittorrent_server_domains | default('*') }}
WebUI\SessionTimeout=3600
WebUI\TrustedReverseProxiesList=
WebUI\UseUPnP=true
WebUI\Username={{ qbittorrent_username | default('qbittorrentuser') }}
[RSS]
AutoDownloader\DownloadRepacks={{ qbittorrent_download_repacks | default(true) | lower }}
AutoDownloader\SmartEpisodeFilter=s(\\d+)e(\\d+), (\\d+)x(\\d+), "(\\d{4}[.\\-]\\d{1,2}[.\\-]\\d{1,2})", "(\\d{1,2}[.\\-]\\d{1,2}[.\\-]\\d{4})"