1 line
17 KiB
JSON
1 line
17 KiB
JSON
{"repo": "arnedoan/subsarr", "files": {"docker-compose.prod.yml": {"f982bf4ffc70f3569b79f0131bd926287a56d521": {"t": 1785745242.9434052, "n": 2185, "h": "e6032d0e84ed0a43", "c": "services:\n redis:\n image: redis:7-alpine\n restart: unless-stopped\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 5s\n timeout: 3s\n retries: 5\n\n api:\n image: ghcr.io/arnedoan/subsarr-backend:latest\n restart: unless-stopped\n ports:\n - '3001:3001'\n environment:\n PUID: ${PUID:-0}\n PGID: ${PGID:-0}\n OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n REDIS_URL: redis://redis:6379\n SUBSYNC_MEDIA_DIRS: ${SUBSYNC_MEDIA_DIRS:-/media}\n SUBSYNC_SCAN_CACHE_TTL_MINUTES: ${SUBSYNC_SCAN_CACHE_TTL_MINUTES:-30}\n SUBSYNC_SOURCE_LANGUAGE: ${SUBSYNC_SOURCE_LANGUAGE:-eng}\n SUBSYNC_TARGET_LANGUAGE: ${SUBSYNC_TARGET_LANGUAGE:-spa}\n SUBSYNC_CONCURRENCY: ${SUBSYNC_CONCURRENCY:-2}\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n # Misma carpeta que el volumen :/data (DB SQLite, profiles.json, glossary.json, history/)\n SUBSYNC_DATA_DIR: /data\n # Opcional: SUBSYNC_DATABASE_PATH=/data/subsarr.db\n SUBSYNC_PATH_EXCLUSIONS: ${SUBSYNC_PATH_EXCLUSIONS:-}\n SUBSYNC_FILE_TOO_LARGE_BYTES: ${SUBSYNC_FILE_TOO_LARGE_BYTES:-}\n PORT: 3001\n volumes:\n - ${SUBSYNC_MEDIA_VOLUME}:/media\n - ${SUBSYNC_DATA_VOLUME:-./data}:/data\n depends_on:\n redis:\n condition: service_healthy\n healthcheck:\n test: [\"CMD\", \"wget\", \"-q\", \"--spider\", \"http://localhost:3001/settings\"]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 30s\n\n web:\n image: ghcr.io/arnedoan/subsarr-frontend:latest\n restart: unless-stopped\n ports:\n - '3000:3000'\n environment:\n NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:3001}\n API_INTERNAL_URL: http://api:3001\n PORT: 3000\n depends_on:\n api:\n condition: service_healthy\n healthcheck:\n test:\n [\n \"CMD\",\n \"node\",\n \"-e\",\n \"require('http').get('http://127.0.0.1:3000/',r=>{r.resume();process.exit(r.statusCode===200?0:1)}).on('error',()=>process.exit(1))\",\n ]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 45s\n"}, "aaf072fb5c8536ceb3ff2b0f9b6efcc475c07b81": {"t": 1785749151.6773653, "n": 2185, "h": "e6032d0e84ed0a43", "c": "services:\n redis:\n image: redis:7-alpine\n restart: unless-stopped\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 5s\n timeout: 3s\n retries: 5\n\n api:\n image: ghcr.io/arnedoan/subsarr-backend:latest\n restart: unless-stopped\n ports:\n - '3001:3001'\n environment:\n PUID: ${PUID:-0}\n PGID: ${PGID:-0}\n OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n REDIS_URL: redis://redis:6379\n SUBSYNC_MEDIA_DIRS: ${SUBSYNC_MEDIA_DIRS:-/media}\n SUBSYNC_SCAN_CACHE_TTL_MINUTES: ${SUBSYNC_SCAN_CACHE_TTL_MINUTES:-30}\n SUBSYNC_SOURCE_LANGUAGE: ${SUBSYNC_SOURCE_LANGUAGE:-eng}\n SUBSYNC_TARGET_LANGUAGE: ${SUBSYNC_TARGET_LANGUAGE:-spa}\n SUBSYNC_CONCURRENCY: ${SUBSYNC_CONCURRENCY:-2}\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n # Misma carpeta que el volumen :/data (DB SQLite, profiles.json, glossary.json, history/)\n SUBSYNC_DATA_DIR: /data\n # Opcional: SUBSYNC_DATABASE_PATH=/data/subsarr.db\n SUBSYNC_PATH_EXCLUSIONS: ${SUBSYNC_PATH_EXCLUSIONS:-}\n SUBSYNC_FILE_TOO_LARGE_BYTES: ${SUBSYNC_FILE_TOO_LARGE_BYTES:-}\n PORT: 3001\n volumes:\n - ${SUBSYNC_MEDIA_VOLUME}:/media\n - ${SUBSYNC_DATA_VOLUME:-./data}:/data\n depends_on:\n redis:\n condition: service_healthy\n healthcheck:\n test: [\"CMD\", \"wget\", \"-q\", \"--spider\", \"http://localhost:3001/settings\"]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 30s\n\n web:\n image: ghcr.io/arnedoan/subsarr-frontend:latest\n restart: unless-stopped\n ports:\n - '3000:3000'\n environment:\n NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:3001}\n API_INTERNAL_URL: http://api:3001\n PORT: 3000\n depends_on:\n api:\n condition: service_healthy\n healthcheck:\n test:\n [\n \"CMD\",\n \"node\",\n \"-e\",\n \"require('http').get('http://127.0.0.1:3000/',r=>{r.resume();process.exit(r.statusCode===200?0:1)}).on('error',()=>process.exit(1))\",\n ]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 45s\n"}, "2cf2561ac9df332f7b750bf067cd90d9b43c47bb": {"t": 1785749153.2414722, "n": 2002, "h": "51d47c96b91638fa", "c": "services:\n redis:\n image: redis:7-alpine\n restart: unless-stopped\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 5s\n timeout: 3s\n retries: 5\n\n api:\n image: ghcr.io/arnedoan/subsarr-backend:latest\n restart: unless-stopped\n ports:\n - '3001:3001'\n environment:\n PUID: ${PUID:-0}\n PGID: ${PGID:-0}\n OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n REDIS_URL: redis://redis:6379\n SUBSYNC_MEDIA_DIRS: ${SUBSYNC_MEDIA_DIRS:-/media}\n SUBSYNC_SCAN_CACHE_TTL_MINUTES: ${SUBSYNC_SCAN_CACHE_TTL_MINUTES:-30}\n SUBSYNC_SOURCE_LANGUAGE: ${SUBSYNC_SOURCE_LANGUAGE:-eng}\n SUBSYNC_TARGET_LANGUAGE: ${SUBSYNC_TARGET_LANGUAGE:-spa}\n SUBSYNC_CONCURRENCY: ${SUBSYNC_CONCURRENCY:-2}\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n SUBSYNC_PATH_EXCLUSIONS: ${SUBSYNC_PATH_EXCLUSIONS:-}\n SUBSYNC_FILE_TOO_LARGE_BYTES: ${SUBSYNC_FILE_TOO_LARGE_BYTES:-}\n PORT: 3001\n volumes:\n - ${SUBSYNC_MEDIA_VOLUME}:/media\n - ${SUBSYNC_DATA_VOLUME:-./data}:/data\n depends_on:\n redis:\n condition: service_healthy\n healthcheck:\n test: [\"CMD\", \"wget\", \"-q\", \"--spider\", \"http://localhost:3001/settings\"]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 30s\n\n web:\n image: ghcr.io/arnedoan/subsarr-frontend:latest\n restart: unless-stopped\n ports:\n - '3000:3000'\n environment:\n NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:3001}\n API_INTERNAL_URL: http://api:3001\n PORT: 3000\n depends_on:\n api:\n condition: service_healthy\n healthcheck:\n test:\n [\n \"CMD\",\n \"node\",\n \"-e\",\n \"require('http').get('http://127.0.0.1:3000/',r=>{r.resume();process.exit(r.statusCode===200?0:1)}).on('error',()=>process.exit(1))\",\n ]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 45s\n"}, "fb7d118266a213af584a14bdd0d617784b5fc707": {"t": 1785749154.4678612, "n": 1679, "h": "1288e06f6eb5eb91", "c": "services:\n redis:\n image: redis:7-alpine\n restart: unless-stopped\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 5s\n timeout: 3s\n retries: 5\n\n api:\n image: ghcr.io/arnedoan/subsarr-backend:latest\n restart: unless-stopped\n ports:\n - '3001:3001'\n environment:\n PUID: ${PUID:-0}\n PGID: ${PGID:-0}\n OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n REDIS_URL: redis://redis:6379\n SUBSYNC_MEDIA_DIRS: ${SUBSYNC_MEDIA_DIRS:-/media}\n SUBSYNC_SCAN_CACHE_TTL_MINUTES: ${SUBSYNC_SCAN_CACHE_TTL_MINUTES:-30}\n SUBSYNC_SOURCE_LANGUAGE: ${SUBSYNC_SOURCE_LANGUAGE:-eng}\n SUBSYNC_TARGET_LANGUAGE: ${SUBSYNC_TARGET_LANGUAGE:-spa}\n SUBSYNC_CONCURRENCY: ${SUBSYNC_CONCURRENCY:-2}\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n SUBSYNC_PATH_EXCLUSIONS: ${SUBSYNC_PATH_EXCLUSIONS:-}\n SUBSYNC_FILE_TOO_LARGE_BYTES: ${SUBSYNC_FILE_TOO_LARGE_BYTES:-}\n PORT: 3001\n volumes:\n - ${SUBSYNC_MEDIA_VOLUME}:/media\n - ${SUBSYNC_DATA_VOLUME:-./data}:/data\n depends_on:\n redis:\n condition: service_healthy\n healthcheck:\n test: [\"CMD\", \"wget\", \"-q\", \"--spider\", \"http://localhost:3001/settings\"]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 30s\n\n web:\n image: ghcr.io/arnedoan/subsarr-frontend:latest\n restart: unless-stopped\n ports:\n - '3000:3000'\n environment:\n NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:3001}\n API_INTERNAL_URL: http://api:3001\n PORT: 3000\n depends_on:\n api:\n condition: service_healthy\n"}, "fbbf28d341cce523cf97e86befa7d4cc4e79b248": {"t": 1785749156.6043081, "n": 1283, "h": "7ecd28883e52c60e", "c": "services:\n redis:\n image: redis:7-alpine\n restart: unless-stopped\n\n api:\n image: ghcr.io/arnedoan/subsarr-backend:latest\n restart: unless-stopped\n ports:\n - '3001:3001'\n environment:\n PUID: ${PUID:-0}\n PGID: ${PGID:-0}\n OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n REDIS_URL: redis://redis:6379\n SUBSYNC_MEDIA_DIRS: ${SUBSYNC_MEDIA_DIRS:-/media}\n SUBSYNC_SCAN_CACHE_TTL_MINUTES: ${SUBSYNC_SCAN_CACHE_TTL_MINUTES:-30}\n SUBSYNC_SOURCE_LANGUAGE: ${SUBSYNC_SOURCE_LANGUAGE:-eng}\n SUBSYNC_TARGET_LANGUAGE: ${SUBSYNC_TARGET_LANGUAGE:-spa}\n SUBSYNC_CONCURRENCY: ${SUBSYNC_CONCURRENCY:-2}\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n SUBSYNC_PATH_EXCLUSIONS: ${SUBSYNC_PATH_EXCLUSIONS:-}\n SUBSYNC_FILE_TOO_LARGE_BYTES: ${SUBSYNC_FILE_TOO_LARGE_BYTES:-}\n PORT: 3001\n volumes:\n - ${SUBSYNC_MEDIA_VOLUME}:/media\n - ${SUBSYNC_DATA_VOLUME:-./data}:/data\n depends_on:\n - redis\n\n web:\n image: ghcr.io/arnedoan/subsarr-frontend:latest\n restart: unless-stopped\n ports:\n - '3000:3000'\n environment:\n NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:3001}\n PORT: 3000\n depends_on:\n - api\n"}, "54fd44e155ee0a2d46637f6546b0b3ce14534d66": {"t": 1785749157.8555417, "n": 1237, "h": "2a369a2a94e19f86", "c": "services:\n redis:\n image: redis:7-alpine\n restart: unless-stopped\n\n api:\n image: ghcr.io/arnedoan/subsarr-backend:latest\n restart: unless-stopped\n ports:\n - '3001:3001'\n environment:\n OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n REDIS_URL: redis://redis:6379\n SUBSYNC_MEDIA_DIRS: ${SUBSYNC_MEDIA_DIRS:-/media}\n SUBSYNC_SCAN_CACHE_TTL_MINUTES: ${SUBSYNC_SCAN_CACHE_TTL_MINUTES:-30}\n SUBSYNC_SOURCE_LANGUAGE: ${SUBSYNC_SOURCE_LANGUAGE:-eng}\n SUBSYNC_TARGET_LANGUAGE: ${SUBSYNC_TARGET_LANGUAGE:-spa}\n SUBSYNC_CONCURRENCY: ${SUBSYNC_CONCURRENCY:-2}\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n SUBSYNC_PATH_EXCLUSIONS: ${SUBSYNC_PATH_EXCLUSIONS:-}\n SUBSYNC_FILE_TOO_LARGE_BYTES: ${SUBSYNC_FILE_TOO_LARGE_BYTES:-}\n PORT: 3001\n volumes:\n - ${SUBSYNC_MEDIA_VOLUME}:/media\n - ${SUBSYNC_DATA_VOLUME:-./data}:/data\n depends_on:\n - redis\n\n web:\n image: ghcr.io/arnedoan/subsarr-frontend:latest\n restart: unless-stopped\n ports:\n - '3000:3000'\n environment:\n NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:3001}\n PORT: 3000\n depends_on:\n - api\n"}, "3aba82e749342fbfa2c3193dcb96b4654f2d7d54": {"t": 1785749158.917136, "n": 1268, "h": "62897b0af3673121", "c": "services:\n redis:\n image: redis:7-alpine\n restart: unless-stopped\n\n api:\n image: ${SUBSYNC_REGISTRY}/${SUBSYNC_API_IMAGE}:${SUBSYNC_TAG}\n restart: unless-stopped\n ports:\n - '3001:3001'\n environment:\n OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n REDIS_URL: redis://redis:6379\n SUBSYNC_MEDIA_DIRS: ${SUBSYNC_MEDIA_DIRS:-/media}\n SUBSYNC_SCAN_CACHE_TTL_MINUTES: ${SUBSYNC_SCAN_CACHE_TTL_MINUTES:-30}\n SUBSYNC_SOURCE_LANGUAGE: ${SUBSYNC_SOURCE_LANGUAGE:-eng}\n SUBSYNC_TARGET_LANGUAGE: ${SUBSYNC_TARGET_LANGUAGE:-spa}\n SUBSYNC_CONCURRENCY: ${SUBSYNC_CONCURRENCY:-2}\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n SUBSYNC_PATH_EXCLUSIONS: ${SUBSYNC_PATH_EXCLUSIONS:-}\n SUBSYNC_FILE_TOO_LARGE_BYTES: ${SUBSYNC_FILE_TOO_LARGE_BYTES:-}\n PORT: 3001\n volumes:\n - ${SUBSYNC_MEDIA_VOLUME}:/media\n - ${SUBSYNC_DATA_VOLUME:-./data}:/data\n depends_on:\n - redis\n\n web:\n image: ${SUBSYNC_REGISTRY}/${SUBSYNC_WEB_IMAGE}:${SUBSYNC_TAG}\n restart: unless-stopped\n ports:\n - '3000:3000'\n environment:\n NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:3001}\n PORT: 3000\n depends_on:\n - api\n"}}, "docker-compose.test.yml": {"f982bf4ffc70f3569b79f0131bd926287a56d521": {"t": 1785747413.087666, "n": 1300, "h": "a8f791d7362f7311", "c": "services:\n redis:\n image: 'redis:7-alpine'\n restart: unless-stopped\n\n api:\n image: 'ghcr.io/arnedoan/subsarr-backend:latest'\n restart: unless-stopped\n expose:\n - '3001'\n environment:\n # Puedes poner llaves falsas para probar que levante\n OPENROUTER_API_KEY: sk-test\n DEEPSEEK_API_KEY: sk-test\n REDIS_URL: 'redis://redis:6379'\n # Usaremos una carpeta local temporal para evitar errores 500 por falta de permisos/directorios\n SUBSYNC_MEDIA_DIRS: '/media'\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n PORT: 3001\n volumes:\n - '/mnt/d/Downloads/Succession/S03:/media'\n - './test-data:/data'\n depends_on:\n - redis\n\n web:\n image: 'ghcr.io/arnedoan/subsarr-frontend:latest'\n restart: unless-stopped\n ports:\n - '3040:3040'\n environment:\n NEXT_PUBLIC_API_URL: 'http://api:3001'\n API_INTERNAL_URL: 'http://api:3001'\n PORT: 3040\n depends_on:\n - api\n healthcheck:\n test:\n [\n \"CMD\",\n \"node\",\n \"-e\",\n \"require('http').get('http://127.0.0.1:3040/',r=>{r.resume();process.exit(r.statusCode===200?0:1)}).on('error',()=>process.exit(1))\",\n ]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 45s\n"}, "2cf2561ac9df332f7b750bf067cd90d9b43c47bb": {"t": 1785749153.0029001, "n": 1300, "h": "a8f791d7362f7311", "c": "services:\n redis:\n image: 'redis:7-alpine'\n restart: unless-stopped\n\n api:\n image: 'ghcr.io/arnedoan/subsarr-backend:latest'\n restart: unless-stopped\n expose:\n - '3001'\n environment:\n # Puedes poner llaves falsas para probar que levante\n OPENROUTER_API_KEY: sk-test\n DEEPSEEK_API_KEY: sk-test\n REDIS_URL: 'redis://redis:6379'\n # Usaremos una carpeta local temporal para evitar errores 500 por falta de permisos/directorios\n SUBSYNC_MEDIA_DIRS: '/media'\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n PORT: 3001\n volumes:\n - '/mnt/d/Downloads/Succession/S03:/media'\n - './test-data:/data'\n depends_on:\n - redis\n\n web:\n image: 'ghcr.io/arnedoan/subsarr-frontend:latest'\n restart: unless-stopped\n ports:\n - '3040:3040'\n environment:\n NEXT_PUBLIC_API_URL: 'http://api:3001'\n API_INTERNAL_URL: 'http://api:3001'\n PORT: 3040\n depends_on:\n - api\n healthcheck:\n test:\n [\n \"CMD\",\n \"node\",\n \"-e\",\n \"require('http').get('http://127.0.0.1:3040/',r=>{r.resume();process.exit(r.statusCode===200?0:1)}).on('error',()=>process.exit(1))\",\n ]\n interval: 10s\n timeout: 5s\n retries: 5\n start_period: 45s\n"}, "3c51c72c0b1ca8174d4f3eabcb0131bc0e678c26": {"t": 1785749154.2513807, "n": 977, "h": "d2c9c66aeab75097", "c": "services:\n redis:\n image: 'redis:7-alpine'\n restart: unless-stopped\n\n api:\n image: 'ghcr.io/arnedoan/subsarr-backend:latest'\n restart: unless-stopped\n expose:\n - '3001'\n environment:\n # Puedes poner llaves falsas para probar que levante\n OPENROUTER_API_KEY: sk-test\n DEEPSEEK_API_KEY: sk-test\n REDIS_URL: 'redis://redis:6379'\n # Usaremos una carpeta local temporal para evitar errores 500 por falta de permisos/directorios\n SUBSYNC_MEDIA_DIRS: '/media'\n SUBSYNC_SETTINGS_FILE_PATH: /data/subsync.settings.json\n PORT: 3001\n volumes:\n - '/mnt/d/Downloads/Succession/S03:/media'\n - './test-data:/data'\n depends_on:\n - redis\n\n web:\n image: 'ghcr.io/arnedoan/subsarr-frontend:latest'\n restart: unless-stopped\n ports:\n - '3040:3040'\n environment:\n NEXT_PUBLIC_API_URL: 'http://api:3001'\n API_INTERNAL_URL: 'http://api:3001'\n PORT: 3040\n depends_on:\n - api\n"}}}} |