Self-Hosted YouTube Automation with YTPTube (Advanced MeTube Alternative)

Short Introduction

YTPTube is a powerful, user-friendly, self-hosted frontend for yt-dlp wrapped in a Docker container. It’s a complete rewrite of MeTube with a focus on automation, flexibility, and usability for both technical and non-technical users. It offers advanced scheduling, concurrent downloads, cookies support, ARM64 builds, browser extensions, and more—making it ideal for YouTube archiving, automation, and content downloading at scale.

Simplified One-Line Flowchart

Pull Docker ➔ Choose UI Mode ➔ Configure Presets/Proxies ➔ Schedule or Download ➔ Auto-Update & Enjoy


Easy Step-by-Step Method

Step 1: Clone or Deploy YTPTube

Step 2: Choose Between Basic and Advanced UI Modes

Step 3: Use Presets, CLI Options, and Cookies

  • Supports per-link CLI flags.
  • Add reusable presets (like -t mp3) for repetitive tasks.
  • Supports browser-based cookie pasting to bypass YouTube restrictions.
  • Handles age-restricted content flawlessly.

Step 4: Automate Your Workflows

Step 5: Add Browser Extensions & iOS Shortcuts

  • Works with Firefox, Chromium-based browsers, and iOS Shortcuts.
  • These connect to your hosted instance for quick video grabbing.
    Preview UI: https://files.catbox.moe/lbztzp.png

Step 6: Audio-Only? Convert to MP3 Easily

  • Use CLI option -t mp3 or set it as a preset.
  • Makes audio downloads simple for music lovers.

Step 7: Use on ARM64 Devices

  • As of latest release, ARM64 builds are available.
  • master builds support linux/arm64; dev builds remain amd64 only.

Step 8: Proxy Support & Cookie Expiry Workarounds

  • Proxies like Squid can bypass blocked OVH IPs.
  • Environment variable HTTP_PROXY works similarly to MeTube’s proxy handling.

Step 9: Configure for Read-Only Systems (Optional)

  • Yes, YTPTube supports rootless operation and can run in read-only mode if:
    • /config, /tmp, and /downloads are mounted as writable volumes
    • Auto-update is disabled via ENV

Quick Tips

  • :repeat_button: Rapid Fix Cycle: Bugs are often fixed within minutes.
  • :counterclockwise_arrows_button: Auto yt-dlp Updates: Pulls latest version on every container start (can be disabled).
  • :locked_with_key: Basic Auth Available: Protect your instance with username/password.
  • :light_bulb: Display Modes: Use “List View” for a compact history layout.
  • :brain: JSON Conversion: Input URLs are internally converted into JSON-compatible instructions for yt-dlp.
  • :brick: Bundled Tools: Includes ffmpeg, aria2, mkvtoolsnix, rtmpdump, and more inside the container.
  • :package: Simple File Browser: Can be enabled for browsing downloaded files directly from the web UI.

Important Notes

  • :prohibited: No Raw CLI or cURL Commands: For safety, users cannot input raw shell commands into the UI.
  • :file_folder: Writable Folders Required: Minimum write access to /config, /tmp, and /downloads is mandatory.
  • :warning: Not All Features in Basic Mode: Designed to be simple; advanced options are hidden.
  • :test_tube: Livestream Support: Only tested on YouTube (not Twitch or others yet).
  • :puzzle_piece: Custom Update Paths: Auto-updater can be disabled if using read-only containers.
  • :snail: ARM64 Caution: Python package install is slower; thus, dev builds don’t support ARM64 yet.
  • :speech_balloon: Roadmap Insight: More UI improvements and performance tweaks are in development; check dev branch regularly.

Useful Links

8 Likes