Add web UI for configuration and management
- Flask-based web interface on port 8080 - Dashboard with channel statistics and sync status - Channel management (add/remove channels via UI) - Settings page for all configuration options - Cookie file upload interface - Real-time log viewer - Manual sync trigger from web UI - Updated Dockerfile to include Flask and web assets - Updated Unraid template with WebUI port - Updated README with web UI documentation
This commit is contained in:
30
README.md
30
README.md
@@ -1,9 +1,10 @@
|
||||
# YouTube Channel Sync Docker
|
||||
|
||||
Automatically download and organize YouTube channel videos for Emby, Plex, or Jellyfin media servers.
|
||||
Automatically download and organize YouTube channel videos for Emby, Plex, or Jellyfin media servers with a built-in web UI for easy configuration.
|
||||
|
||||
## Features
|
||||
|
||||
- **Web-based configuration interface** - No more editing text files!
|
||||
- Downloads videos in best quality up to 1080p (configurable)
|
||||
- Organizes videos by season folders (year-based)
|
||||
- Proper episode naming for media servers: `S2026E001 - Video Title - [VideoID].mp4`
|
||||
@@ -12,17 +13,19 @@ Automatically download and organize YouTube channel videos for Emby, Plex, or Je
|
||||
- Tracks downloaded videos to avoid re-downloading
|
||||
- Supports YouTube cookies for authentication (bypasses bot detection)
|
||||
- Scheduled automatic syncs via cron
|
||||
- Lightweight Alpine Linux base (~200MB)
|
||||
- Real-time sync status and logs
|
||||
- Lightweight Alpine Linux base (~250MB)
|
||||
|
||||
## Quick Start (Unraid)
|
||||
|
||||
1. Install from Community Applications: Search for "YouTube Sync"
|
||||
2. Configure paths:
|
||||
- Web UI Port: `8080` (or choose another port)
|
||||
- Download Directory: `/mnt/user/media/YouTube` (or your media location)
|
||||
- Config Directory: `/mnt/user/appdata/youtube-sync`
|
||||
3. Edit `/mnt/user/appdata/youtube-sync/channels.txt` and add your channels
|
||||
4. (Optional) Add YouTube cookies to `/mnt/user/appdata/youtube-sync/cookies.txt`
|
||||
5. Start the container
|
||||
3. Start the container
|
||||
4. Open the web UI at `http://YOUR-SERVER-IP:8080`
|
||||
5. Add channels, configure settings, and upload cookies (optional) through the web interface
|
||||
|
||||
## Configuration
|
||||
|
||||
@@ -54,6 +57,20 @@ YouTube may block downloads without authentication. To fix this:
|
||||
yt-dlp --cookies-from-browser firefox --cookies cookies.txt --skip-download "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
|
||||
```
|
||||
|
||||
## Web UI
|
||||
|
||||
The container includes a built-in web interface for easy management:
|
||||
|
||||
- **Dashboard**: View sync status, channel statistics, and recent activity
|
||||
- **Channels**: Add, remove, and manage YouTube channels
|
||||
- **Settings**: Configure sync schedule, video quality, and other options
|
||||
- **Cookies**: Upload YouTube cookies for authentication
|
||||
- **Logs**: Real-time view of sync progress and errors
|
||||
|
||||
Access the web UI at: `http://YOUR-SERVER-IP:8080`
|
||||
|
||||
All configuration can be done through the web interface - no need to manually edit config files!
|
||||
|
||||
## Environment Variables
|
||||
|
||||
| Variable | Default | Description |
|
||||
@@ -73,6 +90,8 @@ services:
|
||||
youtube-sync:
|
||||
image: azcomputerguru/youtube-sync:latest
|
||||
container_name: youtube-sync
|
||||
ports:
|
||||
- "8080:8080"
|
||||
environment:
|
||||
- SYNC_SCHEDULE=0 2 * * *
|
||||
- MAX_QUALITY=1080
|
||||
@@ -91,6 +110,7 @@ services:
|
||||
```bash
|
||||
docker run -d \
|
||||
--name youtube-sync \
|
||||
-p 8080:8080 \
|
||||
-e SYNC_SCHEDULE="0 2 * * *" \
|
||||
-e MAX_QUALITY=1080 \
|
||||
-e TZ=America/Phoenix \
|
||||
|
||||
Reference in New Issue
Block a user