compose.yml
| 1 | services: |
| 2 | vidarchive: |
| 3 | # yt-dlp is downloaded into ./data/bin on first start and updated from the |
| 4 | # Settings page. The image does not carry it. |
| 5 | build: |
| 6 | context: . |
| 7 | dockerfile: Containerfile |
| 8 | container_name: vidarchive |
| 9 | ports: |
| 10 | - "8080:8080" |
| 11 | volumes: |
| 12 | - ./data:/data |
| 13 | env_file: |
| 14 | - .env |
| 15 | environment: |
| 16 | - VIDARCHIVE_PORT=8080 |
| 17 | - VIDARCHIVE_DATA_DIR=/data |
| 18 | - VIDARCHIVE_WORKERS=2 |
| 19 | # How often the subscription scheduler looks for due runs, in seconds |
| 20 | - VIDARCHIVE_SCHEDULER_INTERVAL=60 |
| 21 | # Uncomment to run behind HTTPS proxy: |
| 22 | # - VIDARCHIVE_BASE_URL=https://vidarchive.example.com |
| 23 | # Uncomment to manage yt-dlp yourself; VidArchive then never touches it. |
| 24 | # - VIDARCHIVE_YTDLP_PATH=/usr/bin/yt-dlp |
| 25 | # Add this to still let VidArchive run the updater of a binary you |
| 26 | # installed yourself, e.g. on an architecture it has no build for. |
| 27 | # - VIDARCHIVE_UPDATE_EXTERNAL_TOOLS=1 |
| 28 | restart: unless-stopped |
| 29 | # Give in-flight downloads and the database checkpoint time to finish before |
| 30 | # the container is killed; the default 10s can cut a shutdown short. |
| 31 | stop_grace_period: 60s |
| 32 |