FROM python:3.10-slim WORKDIR /app RUN apt-get update && apt-get install -y \ wget \ gnupg \ tor \ libnss3 \ libnspr4 \ libatk1.0-0 \ libatk-bridge2.0-0 \ libcups2 \ libdrm2 \ libxkbcommon0 \ libxcomposite1 \ libxdamage1 \ libxext6 \ libxfixes3 \ libxrandr2 \ libgbm1 \ libpango-1.0-0 \ libcairo2 \ libasound2 \ && rm -rf /var/lib/apt/lists/* COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt RUN mkdir -p /etc/apt/keyrings \ && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | gpg --dearmor -o /etc/apt/keyrings/google-chrome.gpg \ && echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google-chrome.list \ && apt-get update && apt-get install -y google-chrome-stable \ && rm -rf /var/lib/apt/lists/* RUN playwright install chromium COPY . . # Create Tor configuration RUN mkdir -p /etc/tor/torrc.d RUN echo "ControlPort 9051" >> /etc/tor/torrc && \ echo "CookieAuthentication 0" >> /etc/tor/torrc && \ echo "SOCKSPort 9050" >> /etc/tor/torrc # Create startup script RUN printf '#!/bin/bash\n\ # Start Tor in background\n\ echo "[STARTUP] Starting Tor..."\n\ tor --RunAsDaemon 1\n\ sleep 3\n\ echo "[STARTUP] Tor started, starting MSE API..."\n\ # Start the Python application\n\ python main.py\n' > /app/start.sh && chmod +x /app/start.sh EXPOSE 7777 CMD ["/app/start.sh"]