You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

162 lines
3.0 KiB

version: "3.9"
services:
request:
build:
context: .
args:
SERVICE: request
depends_on:
- "database"
- "torrent_client"
env_file:
- ./services/request/.env
links:
- "database"
- "torrent_client"
ports:
- 3200:3200
restart: unless-stopped
secrets:
- app_key
- discord_bot_key
- mysql_root_password
- plex_token
- tmdb_key
- tvdb_key
- tvdb_pin
user: ${UID}:${GID}
volumes:
- var:/var/autoplex
seeker:
build:
context: .
args:
SERVICE: seeker
depends_on:
- "database"
- "torrent_client"
env_file:
- ./services/seeker/.env
links:
- "database"
- "torrent_client"
restart: unless-stopped
secrets:
- mysql_root_password
user: ${UID}:${GID}
volumes:
- var:/var/autoplex
torrent_webui:
build:
context: .
args:
SERVICE: torrent-webui
depends_on:
- "database"
- "torrent_client"
env_file:
- ./services/torrent-webui/.env
links:
- "database"
- "torrent_client"
ports:
- 3300:3300
secrets:
- mysql_root_password
user: ${UID}:${GID}
volumes:
- var:/var/autoplex
torrent_client:
build:
context: .
args:
BASE: base-slim
SERVICE: torrent-client
depends_on:
- "database"
- "vpn"
env_file:
- ./services/torrent-client/.env
healthcheck:
test: ["CMD", "ping", "-q", "-c1", "google.com"]
interval: 5m
timeout: 10s
retries: 3
start_period: 5m
network_mode: service:vpn
restart: unless-stopped
secrets:
- mysql_root_password
user: ${UID}:${GID}
volumes:
- var:/var/autoplex
database:
image: mysql
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ROOT_PASSWORD_FILE: /run/secrets/mysql_root_password
ports:
- 33061:3306
restart: unless-stopped
security_opt:
- seccomp=unconfined
secrets:
- mysql_root_password
volumes:
- ./bootstrap/database/init:/docker-entrypoint-initdb.d
- mysql:/var/lib/mysql
vpn:
build:
context: ./utils/vpn
cap_add:
- net_admin
command:
- '-f ""'
environment:
TZ: "CST6CDT"
links:
- "database"
networks:
- default
read_only: true
tmpfs:
- /run
- /tmp
restart: unless-stopped
secrets:
- vpn_auth
security_opt:
- label:disable
stdin_open: true
tty: true
volumes:
- /dev/net:/dev/net:z
- ./.volumes/vpn:/vpn
secrets:
app_key:
file: ./.secrets/app_key
discord_bot_key:
file: ./.secrets/discord_bot_key
mysql_root_password:
file: ./.secrets/mysql_root_password
plex_token:
file: ./.secrets/plex_token
tmdb_key:
file: ./.secrets/tmdb_key
tvdb_key:
file: ./.secrets/tvdb_key
tvdb_pin:
file: ./.secrets/tvdb_pin
vpn_auth:
file: ./.secrets/vpn_auth
volumes:
mysql:
var: