From e11f4d45c05935d1dcc144d2c4855e4e95412062 Mon Sep 17 00:00:00 2001 From: Viren070 Date: Wed, 21 May 2025 18:36:26 +0100 Subject: [PATCH] feat: add yamtrack --- apps/.env | 3 +- apps/compose.yaml | 1 + apps/yamtrack/.env | 121 +++++++++++++++++++++++++++++++++++++ apps/yamtrack/compose.yaml | 40 ++++++++++++ 4 files changed, 164 insertions(+), 1 deletion(-) create mode 100644 apps/yamtrack/.env create mode 100644 apps/yamtrack/compose.yaml diff --git a/apps/.env b/apps/.env index f1f6a28..7ed1991 100644 --- a/apps/.env +++ b/apps/.env @@ -161,12 +161,13 @@ TORBOX_MANAGER_HOSTNAME=tbm.${DOMAIN} TRAEFIK_HOSTNAME=traefik.${DOMAIN} UPTIME_KUMA_HOSTNAME=status.${DOMAIN} VAULTWARDEN_HOSTNAME=vaultwarden.${DOMAIN} +YAMTRACK_HOSTNAME=yamtrack.${DOMAIN} ZILEAN_HOSTNAME=zilean.${DOMAIN} ZIPLINE_HOSTNAME=zipline.${DOMAIN} ZURG_HOSTNAME=zurg.${DOMAIN} # This is the list of all the domains for which Cloudflare DDNS will create A/AAAA records for. -DOMAINS=${ADDON_MANAGER_HOSTNAME},${AIOSTREAMS_HOSTNAME},${AIOSTREMIO_HOSTNAME},${ANIME_KITSU_HOSTNAME},${AUTHELIA_HOSTNAME},${AUTOSYNC_HOSTNAME},${BAZARR_HOSTNAME},${BAZARR4K_HOSTNAME},${BESZEL_HOSTNAME},${COMET_HOSTNAME},${DASHDOT_HOSTNAME},${DOCKGE_HOSTNAME},${DOZZLE_HOSTNAME},${EASYNEWS_PLUS_HOSTNAME},${EASYNEWS_PLUS_PLUS_HOSTNAME},${HONEY_HOSTNAME},${HUNTARR_HOSTNAME},${JACKETT_HOSTNAME},${JACKETTIO_HOSTNAME},${JELLYFIN_HOSTNAME},${JELLYSEER_HOSTNAME},${LIBRESPEED_HOSTNAME},${MEDIAFLOW_PROXY_HOSTNAME},${MEDIAFUSION_HOSTNAME},${MINECRAFT_HOSTNAME},${NZBHYDRA2_HOSTNAME},${OMG_TV_STREMIO_ADDON_HOSTNAME},${OVERSEERR_HOSTNAME},${PLAUSIBLE_HOSTNAME},${PLEX_HOSTNAME},${PORTAINER_HOSTNAME},${PROWLARR_HOSTNAME},${RADARR_HOSTNAME},${RADARR4K_HOSTNAME},${RADARRANIME_HOSTNAME},${SEANIME_HOSTNAME},${SEARXNG_HOSTNAME},${SONARR_HOSTNAME},${SONARR4K_HOSTNAME},${SONARRANIME_HOSTNAME},${SPEEDTEST_TRACKER_HOSTNAME},${STREAMYSTATS_HOSTNAME},${STREMIO_CATALOG_PROVIDERS_HOSTNAME},${STREMIO_JACKETT_HOSTNAME},${STREMIO_SERVER_HOSTNAME},${STREMIO_TRAKT_ADDON_HOSTNAME},${STREMTHRU_HOSTNAME},${TAUTULLI_HOSTNAME},${TMDB_ADDON_HOSTNAME},${TORBOX_MANAGER_HOSTNAME},${TRAEFIK_HOSTNAME},${UPTIME_KUMA_HOSTNAME},${VAULTWARDEN_HOSTNAME},${ZILEAN_HOSTNAME},${ZIPLINE_HOSTNAME},${ZURG_HOSTNAME} +DOMAINS=${ADDON_MANAGER_HOSTNAME},${AIOSTREAMS_HOSTNAME},${AIOSTREMIO_HOSTNAME},${ANIME_KITSU_HOSTNAME},${AUTHELIA_HOSTNAME},${AUTOSYNC_HOSTNAME},${BAZARR_HOSTNAME},${BAZARR4K_HOSTNAME},${BESZEL_HOSTNAME},${COMET_HOSTNAME},${DASHDOT_HOSTNAME},${DOCKGE_HOSTNAME},${DOZZLE_HOSTNAME},${EASYNEWS_PLUS_HOSTNAME},${EASYNEWS_PLUS_PLUS_HOSTNAME},${HONEY_HOSTNAME},${HUNTARR_HOSTNAME},${JACKETT_HOSTNAME},${JACKETTIO_HOSTNAME},${JELLYFIN_HOSTNAME},${JELLYSEER_HOSTNAME},${LIBRESPEED_HOSTNAME},${MEDIAFLOW_PROXY_HOSTNAME},${MEDIAFUSION_HOSTNAME},${MINECRAFT_HOSTNAME},${NZBHYDRA2_HOSTNAME},${OMG_TV_STREMIO_ADDON_HOSTNAME},${OVERSEERR_HOSTNAME},${PLAUSIBLE_HOSTNAME},${PLEX_HOSTNAME},${PORTAINER_HOSTNAME},${PROWLARR_HOSTNAME},${RADARR_HOSTNAME},${RADARR4K_HOSTNAME},${RADARRANIME_HOSTNAME},${SEANIME_HOSTNAME},${SEARXNG_HOSTNAME},${SONARR_HOSTNAME},${SONARR4K_HOSTNAME},${SONARRANIME_HOSTNAME},${SPEEDTEST_TRACKER_HOSTNAME},${STREAMYSTATS_HOSTNAME},${STREMIO_CATALOG_PROVIDERS_HOSTNAME},${STREMIO_JACKETT_HOSTNAME},${STREMIO_SERVER_HOSTNAME},${STREMIO_TRAKT_ADDON_HOSTNAME},${STREMTHRU_HOSTNAME},${TAUTULLI_HOSTNAME},${TMDB_ADDON_HOSTNAME},${TORBOX_MANAGER_HOSTNAME},${TRAEFIK_HOSTNAME},${UPTIME_KUMA_HOSTNAME},${VAULTWARDEN_HOSTNAME},${YAMTRACK_HOSTNAME},${ZILEAN_HOSTNAME},${ZIPLINE_HOSTNAME},${ZURG_HOSTNAME} # ==================================================== # DOCKER COMPOSE CONFIGURATION diff --git a/apps/compose.yaml b/apps/compose.yaml index 9b4eb7f..42768e1 100644 --- a/apps/compose.yaml +++ b/apps/compose.yaml @@ -60,6 +60,7 @@ include: - warp/compose.yaml - watchtower/compose.yaml - wests-scripts/compose.yaml + - yamtrack/compose.yaml - zilean/compose.yaml - zipline/compose.yaml - zurg/compose.yaml diff --git a/apps/yamtrack/.env b/apps/yamtrack/.env new file mode 100644 index 0000000..2c91918 --- /dev/null +++ b/apps/yamtrack/.env @@ -0,0 +1,121 @@ +# ███████████████████████████████████████████████████████████████████████████ +# █▌ ▐█ +# █▌ ██╗ ██╗ █████╗ ███╗ ███╗████████╗██████╗ █████╗ ██████╗██╗ ██╗ ▐█ +# █▌ ╚██╗ ██╔╝██╔══██╗████╗ ████║╚══██╔══╝██╔══██╗██╔══██╗██╔════╝██║ ██╔╝ ▐█ +# █▌ ╚████╔╝ ███████║██╔████╔██║ ██║ ██████╔╝███████║██║ █████╔╝ ▐█ +# █▌ ╚██╔╝ ██╔══██║██║╚██╔╝██║ ██║ ██╔══██╗██╔══██║██║ ██╔═██╗ ▐█ +# █▌ ██║ ██║ ██║██║ ╚═╝ ██║ ██║ ██║ ██║██║ ██║╚██████╗██║ ██╗ ▐█ +# █▌ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝ ▐█ +# █▌ ▐█ +# ███████████████████████████████████████████████████████████████████████████ + +# This file is used to configure Yamtrack. + +# ========================== +# Application Settings +# ========================== +URLS=https://${YAMTRACK_HOSTNAME} +# Whether to enable or disable registration. If you don't want to allow registration, set this to False. +REGISTRATION=True + + +# ========================== +# Database Settings +# ========================== +# The redis URL for Yamtrack, do not change this. +REDIS_URL=redis://yamtrack_redis:6379 +# A cryptographic key, generate one using the command below +# echo "$(openssl rand -base64 64 | tr -d '=/' | tr -d '\n')" +SECRET= + +# ========================== +# Media Sources +# ========================== +# Configuration for the media sources that Yamtrack uses + +# ------------------- +# TMDB +# ------------------- +# Settings for https://www.themoviedb.org/ +# Used for movies, TV shows, and anime +# +# TMDB API Key, can be obtained at https://www.themoviedb.org/settings/api +TMDB_API= +# Whether to enable adult content. +TMDB_NSFW=False +# The language to use for TMDB. Provide a ISO 639-1 language code (e.g. en, fr, de), +# optionally followed by a specific ISO-3166-1 country code (e.g. US, GB, FR) +# e.g en or en-US +# ISO 639-1: https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes (Set 1 Column) +# ISO-3166-1: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes (A-2 Column) +TMDB_LANGUAGE=en-US + + +# ------------------- +# MyAnimeList +# ------------------- +# Settings for https://myanimelist.net/ +# Used for anime and manga +# +# The Client ID to use for MAL. A default one is provided and can be used without issues. +# However, you can create your own application at https://myanimelist.net/apiconfig/create +# Use the 'Other' application type and the redirect URL can be set to anything e.g https://github.com/FuzzyGrim/Yamtrack +# MAL_API= +# Whether to enable adult content on MAL. +MAL_NSFW=False + + +# ------------------- +# MangaUpdates +# ------------------- +# Settings for https://www.mangaupdates.com/ +# Used for manga. +# +# Whether to enable adult content on MangaUpdates. +MU_NSFW=False + + +# ------------------- +# IGDB +# ------------------- +# Settings for https://www.igdb.com/ +# Used for games. +# +# The Client ID and secret to use for IGDB. A default one is provided, but it is recommended to create your own application as it has lower rate limits. +# You will need a Twitch account, follow the steps at https://api-docs.igdb.com/#account-creation +# to get a Twitch Application client ID and secret. +# IGDB_ID= +# IGDB_SECRET= +# Whether to enable adult content on IGDB. +IGDB_NSFW=False + +# ========================= +# MEDIA IMPORTING +# ========================= +# These settings allow you to control the applications used to import media into Yamtrack from other sources. + +# ------------------- +# Trakt +# ------------------- + +# The Trakt Client ID. A default one is provided. +# However, you can create your own application at https://trakt.tv/oauth/applications/new +# The redirect URL can be set to anything e.g https://github.com/FuzzyGrim/Yamtrack +# TRAKT_ID= + +# -------------------- +# Simkl +# -------------------- + +# The Simkl Client ID. A default one is provided. +# However, you can create your own application at https://simkl.com/settings/developer/new/custom-search/ +# SIMKL_ID= +# SIMKL_SECRET= + +# ========================= +# GENERAL SETTINGS +# ========================= +# These settings are defined in the main .env file. +TZ=${TZ} +PUID=${PUID} +PGID=${PGID} \ No newline at end of file diff --git a/apps/yamtrack/compose.yaml b/apps/yamtrack/compose.yaml new file mode 100644 index 0000000..25f1bc4 --- /dev/null +++ b/apps/yamtrack/compose.yaml @@ -0,0 +1,40 @@ +services: + yamtrack: + image: ghcr.io/fuzzygrim/yamtrack + container_name: yamtrack + restart: unless-stopped + expose: + - 8000 + env_file: + - .env + labels: + - "traefik.enable=true" + - "traefik.http.routers.yamtrack.rule=Host(`${YAMTRACK_HOSTNAME?}`)" + - "traefik.http.routers.yamtrack.entrypoints=websecure" + - "traefik.http.routers.yamtrack.tls.certresolver=letsencrypt" + - "traefik.http.routers.yamtrack.middlewares=authelia@docker" + volumes: + - ${DOCKER_DATA_DIR}/yamtrack/db:/yamtrack/db + depends_on: + - yamtrack_redis + profiles: + - yamtrack + - all + + + yamtrack_redis: + image: redis:7-alpine + container_name: yamtrack-redis + restart: unless-stopped + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 10s + timeout: 5s + retries: 5 + volumes: + - ${DOCKER_DATA_DIR}/yamtrack/cache:/data + profiles: + - yamtrack + - all + +