Added Node.js installation to the backend Dockerfile to support yt-dlp's JavaScript runtime. Updated downloader API to bypass SSL verification in Docker, improved error reporting, and convert video thumbnails to data URLs to avoid mixed content issues. In the frontend, improved Dockerfile.prod install process and added new service routes for drone and web services in App.tsx.
27 lines
577 B
Docker
27 lines
577 B
Docker
FROM python:3.12-slim
|
|
|
|
WORKDIR /app
|
|
|
|
# Install system dependencies including Node.js for yt-dlp JavaScript runtime
|
|
RUN apt update && apt install -y \
|
|
weasyprint \
|
|
libcairo2 \
|
|
pango1.0-tools \
|
|
libpango-1.0-0 \
|
|
libgobject-2.0-0 \
|
|
ffmpeg \
|
|
ca-certificates \
|
|
curl \
|
|
&& curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
|
&& apt install -y nodejs \
|
|
&& update-ca-certificates \
|
|
&& apt clean \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY requirements.txt .
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
|
|
COPY . .
|
|
|
|
EXPOSE 8000
|