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: