Files
docker-ytdlp/README.md
imagede 25bf7db167 init
2026-03-29 19:07:11 +02:00

63 lines
1.8 KiB
Markdown

# yt-dlp Web Downloader
A minimal self-hosted web UI for downloading videos and audio via [yt-dlp](https://github.com/yt-dlp/yt-dlp).
## Features
- Download videos as **MP4** at any quality (best / 1080p / 720p / 480p / 360p)
- Download audio as **MP3** (192kbps, extracted via ffmpeg)
- Live progress bar with speed & ETA
- Direct in-browser file download button
- Works with YouTube, SoundCloud, Twitter/X, Twitch, and 1000+ other sites
## Quick Start
```bash
# Clone / copy this directory, then:
docker compose up -d --build
```
Open **http://localhost:8080** in your browser.
Downloaded files are saved to `./downloads/` on the host.
## Usage
1. Paste a URL into the input box
2. Click **Preview** to see the video title & thumbnail (optional)
3. Choose **Format** (Video or Audio) and **Quality**
4. Click **Download** — a progress card appears below
5. When done, click **⬇ Download File** to save it locally
## Configuration
| Variable | Default | Description |
|----------|---------|-------------|
| `TZ` | `Europe/Berlin` | Container timezone |
To change the host port, edit `docker-compose.yml`:
```yaml
ports:
- "9090:8080" # → opens on port 9090 instead
```
## Updating yt-dlp
yt-dlp releases frequently. Rebuild the image to get the latest version:
```bash
docker compose build --no-cache && docker compose up -d
```
Or, to update inside a running container without rebuilding:
```bash
docker exec ytdlp-web pip install --upgrade yt-dlp
```
## Notes
- Files are prefixed with a random job ID internally; the download button strips the prefix for a clean filename.
- Downloads are kept in `/downloads` inside the container. Mount a host path to persist them across container restarts.
- No authentication is included by default. If exposed to the internet, put it behind a reverse proxy (e.g. nginx or Caddy) with basic auth.