arnaucube
arnaucube/jellyfin-toolsPublic Self-hosted repository
jellyfin-tools/jellyfin-year-review/compose.yaml
jellyfin-year-review/compose.yamlRaw
 1services:
 2  review:
 3    image: reel-review:1.0.0
 4    build: .
 5    user: "${REVIEW_UID:-10001}:${REVIEW_GID:-10001}"
 6    restart: unless-stopped
 7    read_only: true
 8    cap_drop: [ALL]
 9    security_opt: [no-new-privileges:true]
10    environment:
11      APP_ORIGIN: ${APP_ORIGIN:?Set APP_ORIGIN}
12      JELLYFIN_URL: ${JELLYFIN_URL:?Set JELLYFIN_URL}
13    volumes:
14      - ./data:/data:ro
15    ports:
16      - "127.0.0.1:8080:8080"
17    networks: [media]
18    mem_limit: 256m
19    cpus: 1
20  generate:
21    image: reel-review:1.0.0
22    build: .
23    profiles: [tools]
24    user: "${REVIEW_UID:-10001}:${REVIEW_GID:-10001}"
25    read_only: true
26    cap_drop: [ALL]
27    security_opt: [no-new-privileges:true]
28    environment:
29      JELLYFIN_URL: ${JELLYFIN_URL:?Set JELLYFIN_URL}
30      JELLYFIN_API_KEY: ${JELLYFIN_API_KEY:-}
31      REVIEW_TIMEZONE: ${REVIEW_TIMEZONE:-UTC}
32    volumes:
33      - ./data:/data
34      - ./cache:/cache
35      - ./input:/input:ro
36    networks: [media]
37    command: [generate, --year, "2025", --input, /input/snapshot.json, --output, /data, --cache, /cache]
38    mem_limit: 1g
39    cpus: 2
40networks:
41  media:
42    external: true
43    name: ${JELLYFIN_NETWORK:-media}