CI / build-and-test (push) Successful in 14m7s
- Expand .env.example with full runtime, cache, Docker, and AI keys - Add deployment secrets to .gitignore (docker-compose/.env, docker/.registry.env) - Remove VIMEO_ACCESS_TOKEN from compose files; add OAuth redirect URIs - Load registry credentials from .registry.env in deploy-img.sh - Fail fast if protected registry lacks auth during pre-checks - Pass DOCKER_USERNAME/PASSWORD explicitly to WSL in deploy-img.ps1 - Remove inline collapse buttons from themes-nav.component.html
45 lines
1.8 KiB
YAML
45 lines
1.8 KiB
YAML
services:
|
|
newtube:
|
|
image: docker-registry.dev.home:5000/newtube-angular:latest
|
|
container_name: newtube
|
|
hostname: ${NGINX_HOSTNAME}
|
|
ports:
|
|
- "8080:4000"
|
|
environment:
|
|
- PORT=${PORT}
|
|
- NODE_ENV=${NODE_ENV}
|
|
- JWT_SECRET=${JWT_SECRET}
|
|
- ACCESS_TTL_MIN=${ACCESS_TTL_MIN}
|
|
- REFRESH_TTL_DAYS=${REFRESH_TTL_DAYS}
|
|
- REMEMBER_TTL_DAYS=${REMEMBER_TTL_DAYS}
|
|
- YT_CACHE_TTL_MS=${YT_CACHE_TTL_MS}
|
|
- GEMINI_API_KEY=${GEMINI_API_KEY}
|
|
- YOUTUBE_API_KEY=${YOUTUBE_API_KEY}
|
|
- YOUTUBE_API_KEYS=${YOUTUBE_API_KEYS}
|
|
- TWITCH_CLIENT_ID=${TWITCH_CLIENT_ID}
|
|
- TWITCH_CLIENT_SECRET=${TWITCH_CLIENT_SECRET}
|
|
- DOWNLOAD_PROVIDERS=${DOWNLOAD_PROVIDERS:-youtube,dailymotion,twitch,peertube,odysee,rumble}
|
|
- DOWNLOAD_MAX_CONCURRENT=${DOWNLOAD_MAX_CONCURRENT:-2}
|
|
# --- YouTube hybride (Steps 17-18) ---
|
|
- YT_SEARCH_MODE=${YT_SEARCH_MODE:-innertube-first}
|
|
- YT_SCRAPE_TTL_MS=${YT_SCRAPE_TTL_MS:-1800000}
|
|
- YT_DLP_TIMEOUT_MS=${YT_DLP_TIMEOUT_MS:-20000}
|
|
- YT_INNERTUBE_GL=${YT_INNERTUBE_GL:-FR}
|
|
- YT_INNERTUBE_HL=${YT_INNERTUBE_HL:-fr}
|
|
- YT_TRANSCRIPT_SOURCE=${YT_TRANSCRIPT_SOURCE:-innertube-first}
|
|
- YT_RELATED_TTL_MS=${YT_RELATED_TTL_MS:-3600000}
|
|
- YT_COOKIES_FILE=${YT_COOKIES_FILE:-}
|
|
- YT_PO_TOKEN=${YT_PO_TOKEN:-}
|
|
- YT_EGRESS_PROXY=${YT_EGRESS_PROXY:-}
|
|
- TWITCH_REDIRECT_URI=${TWITCH_REDIRECT_URI}
|
|
- GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID}
|
|
- GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET}
|
|
- GOOGLE_REDIRECT_URI=${GOOGLE_REDIRECT_URI}
|
|
- OAUTH_APP_BASE_URL=${OAUTH_APP_BASE_URL}
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- ${DIR_NEWTUBE}/assets:/app/assets
|
|
- ${DIR_NEWTUBE}/db:/app/db
|
|
- ${DIR_NEWTUBE}/tmp/downloads:/app/tmp/downloads
|
|
restart: unless-stopped
|