# File: docker-compose.yaml # Project: metube # Startdate: 2023-01-23 version: "3" services: metube: image: alexta69/metube:latest container_name: metube restart: unless-stopped ports: - "8081:8081" volumes: - /mnt/public/Video/Downloads:/downloads - /home/metube/.cache:/.cache environment: # Most of this was suggested by readme. I added restrictfilenames to use only ascii and no spaces YTDL_OPTIONS: '{"writesubtitles": true, "subtitleslangs": ["en", "-live_chat"], "postprocessors": [{"key": "Exec", "exec_cmd": "chmod 0664", "when": "after_move"}, {"key": "FFmpegEmbedSubtitle", "already_have_subtitle": false}, {"key": "FFmpegMetadata", "add_chapters": true}], "restrictfilenames": true,"format_sort":["vcodec:h264","vcodec:av01","vcodec:vp9.2","vcodec:vp9","vcodec:h265","vcodec:vp8","vcodec:h263","vcodec:theora","vcodec:other"]}' # personal preference; I like to include id, which also helps jellyfin OUTPUT_TEMPLATE: "%(title)s.%(id)s.%(ext)s" # prefix for reverse proxy in httpd metube.cnf URL_PREFIX: "/metube" # user and group public UID: 960600006 GID: 960600005 watchtower: container_name: watchtower image: containrrr/watchtower:latest restart: always ports: - 8082:8080 command: --interval 86400 metube volumes: - /var/run/docker.sock:/var/run/docker.sock - /etc/timezone:/etc/timezone:ro environment: - WATCHTOWER_CLEANUP=true - WATCHTOWER_LABEL_ENABLE=true - WATCHTOWER_INCLUDE_RESTARTING=true