FROM python:3.11-slim # System dependencies + Chromium for Playwright RUN apt-get update && apt-get install -y --no-install-recommends \ ffmpeg git curl unzip \ # Playwright / Chromium headless deps libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 \ libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 \ libgbm1 libasound2 libpangocairo-1.0-0 libpango-1.0-0 \ libcairo2 libx11-6 libx11-xcb1 libxcb1 libxext6 \ fonts-liberation libappindicator3-1 xdg-utils wget \ && curl -fsSL https://deno.land/install.sh | sh \ && rm -rf /var/lib/apt/lists/* ENV DENO_INSTALL="/root/.deno" ENV PATH="$DENO_INSTALL/bin:$PATH" WORKDIR /app # Install Python packages COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # Install yt-dlp and tiktok-uploader RUN pip install --no-cache-dir -U "yt-dlp[default,curl-cffi]" RUN pip install --no-cache-dir tiktok-uploader # Install Playwright Chromium browser RUN playwright install chromium --with-deps # Copy application files COPY app.py . COPY yt_to_tiktok.py . COPY cookies.txt . COPY m_youtube_com_cookies.txt . COPY start.sh . RUN chmod +x start.sh EXPOSE 7860 CMD ["./start.sh"]