- 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
50 lines
3.5 KiB
XML
50 lines
3.5 KiB
XML
<?xml version="1.0"?>
|
|
<Container version="2">
|
|
<Name>youtube-sync</Name>
|
|
<Repository>azcomputerguru/youtube-sync</Repository>
|
|
<Registry>https://hub.docker.com/r/azcomputerguru/youtube-sync</Registry>
|
|
<Network>bridge</Network>
|
|
<MyIP/>
|
|
<Shell>bash</Shell>
|
|
<Privileged>false</Privileged>
|
|
<Support>https://github.com/azcomputerguru/youtube-sync-docker</Support>
|
|
<Project>https://github.com/azcomputerguru/youtube-sync-docker</Project>
|
|
<Overview>
|
|
Automatically download and organize YouTube channel videos for Emby/Plex/Jellyfin with a built-in web UI.
|
|
|
|
Features:
|
|
- Web-based configuration interface
|
|
- Downloads videos in best quality up to 1080p (configurable)
|
|
- Organizes by season folders (by year)
|
|
- Creates proper episode naming for media servers
|
|
- Embeds thumbnails and metadata
|
|
- Creates tvshow.nfo files for Emby/Plex
|
|
- Tracks downloaded videos to avoid duplicates
|
|
- Supports YouTube cookies for authentication
|
|
- Scheduled automatic syncs via cron
|
|
- Real-time sync status and logs
|
|
|
|
Access the web UI at http://YOUR-SERVER-IP:8080
|
|
</Overview>
|
|
<Category>MediaApp:Video MediaServer:Video</Category>
|
|
<WebUI>http://[IP]:[PORT:8080]/</WebUI>
|
|
<TemplateURL>https://raw.githubusercontent.com/azcomputerguru/youtube-sync-docker/main/youtube-sync.xml</TemplateURL>
|
|
<Icon>https://raw.githubusercontent.com/azcomputerguru/youtube-sync-docker/main/icon.png</Icon>
|
|
<ExtraParams/>
|
|
<PostArgs/>
|
|
<CPUset/>
|
|
<DateInstalled/>
|
|
<DonateText/>
|
|
<DonateLink/>
|
|
<Requires/>
|
|
<Config Name="Web UI Port" Target="8080" Default="8080" Mode="tcp" Description="Port for web configuration interface" Type="Port" Display="always" Required="true" Mask="false">8080</Config>
|
|
<Config Name="Download Directory" Target="/downloads" Default="/mnt/user/media/YouTube" Mode="rw" Description="Where downloaded videos will be stored" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/media/YouTube</Config>
|
|
<Config Name="Config Directory" Target="/config" Default="/mnt/user/appdata/youtube-sync" Mode="rw" Description="Configuration files (channels.txt, cookies.txt)" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/appdata/youtube-sync</Config>
|
|
<Config Name="Sync Schedule" Target="SYNC_SCHEDULE" Default="0 2 * * *" Mode="" Description="Cron schedule for automatic syncs (default: 2 AM daily). Use 'manual' to disable scheduling." Type="Variable" Display="always" Required="false" Mask="false">0 2 * * *</Config>
|
|
<Config Name="Max Quality" Target="MAX_QUALITY" Default="1080" Mode="" Description="Maximum video quality (480, 720, 1080, 1440, 2160)" Type="Variable" Display="always" Required="false" Mask="false">1080</Config>
|
|
<Config Name="Sleep Interval" Target="SLEEP_INTERVAL" Default="2" Mode="" Description="Seconds to wait between downloads (helps avoid rate limiting)" Type="Variable" Display="advanced" Required="false" Mask="false">2</Config>
|
|
<Config Name="Timezone" Target="TZ" Default="America/Phoenix" Mode="" Description="Timezone for scheduling (TZ database name)" Type="Variable" Display="advanced" Required="false" Mask="false">America/Phoenix</Config>
|
|
<Config Name="PUID" Target="PUID" Default="99" Mode="" Description="User ID for file ownership" Type="Variable" Display="advanced" Required="false" Mask="false">99</Config>
|
|
<Config Name="PGID" Target="PGID" Default="100" Mode="" Description="Group ID for file ownership" Type="Variable" Display="advanced" Required="false" Mask="false">100</Config>
|
|
</Container>
|