Files
youtube-sync-docker/Dockerfile
azcomputerguru b3f378a8ef 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
2026-05-08 19:00:36 -04:00

44 lines
882 B
Docker

FROM alpine:3.19
# Install dependencies
RUN apk add --no-cache \
python3 \
py3-pip \
ffmpeg \
bash \
curl \
tzdata \
dcron \
&& pip3 install --no-cache-dir yt-dlp flask --break-system-packages
# Create directories
RUN mkdir -p /downloads /config /app
# Copy scripts and web UI
COPY sync.sh /app/sync.sh
COPY entrypoint.sh /app/entrypoint.sh
COPY app.py /app/app.py
COPY templates/ /app/templates/
COPY static/ /app/static/
RUN chmod +x /app/sync.sh /app/entrypoint.sh /app/app.py
# Set working directory
WORKDIR /app
# Environment defaults
ENV DOWNLOAD_DIR=/downloads \
CONFIG_DIR=/config \
SYNC_SCHEDULE="0 2 * * *" \
MAX_QUALITY=1080 \
SLEEP_INTERVAL=2 \
TZ=America/Phoenix
# Expose web UI port
EXPOSE 8080
# Expose volume mount points
VOLUME ["/downloads", "/config"]
# Run entrypoint
ENTRYPOINT ["/app/entrypoint.sh"]