Spaces:
Paused
Paused
| FROM ghcr.io/prolapser/hf-docker/debian-awg:latest | |
| COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/ | |
| ENV PATH="/app/.venv/bin:$PATH" | |
| RUN echo "deb http://deb.debian.org/debian trixie contrib" >> /etc/apt/sources.list.d/contrib.list && \ | |
| echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections && \ | |
| apt-get update && apt-get install -y --no-install-recommends \ | |
| libnss3 libnspr4 libatk1.0-0 libatk-bridge2.0-0 libcups2 \ | |
| libdbus-1-3 libdrm2 libxkbcommon0 libatspi2.0-0 libxcomposite1 \ | |
| libxdamage1 libxfixes3 libxrandr2 libgbm1 libpango-1.0-0 \ | |
| libcairo2 libasound2 libx11-xcb1 libfontconfig1 libx11-6 \ | |
| libxcb1 libxext6 libxshmfence1 \ | |
| libglib2.0-0 libgtk-3-0 libpangocairo-1.0-0 libcairo-gobject2 \ | |
| libgdk-pixbuf-2.0-0 libxss1 libxtst6 fonts-liberation \ | |
| fonts-noto-color-emoji fonts-unifont fonts-freefont-ttf \ | |
| fonts-ipafont-gothic fonts-wqy-zenhei fonts-tlwg-loma-otf \ | |
| libgl1-mesa-dri libegl-mesa0 xvfb xdotool \ | |
| procps wget ca-certificates xclip ffmpeg unzip privoxy ttf-mscorefonts-installer && \ | |
| curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \ | |
| apt-get install -y --no-install-recommends nodejs && \ | |
| uv venv --python 3.14 && uv pip install pip && ln -s /app/.venv/bin/* /usr/local/bin/ && \ | |
| pip install --no-cache-dir playwright && playwright install-deps chromium 2>/dev/null || true && pip uninstall -y playwright && \ | |
| pip install cloakbrowser[serve,geoip] && touch /.dockerenv && \ | |
| mkdir -p ~/.cloakbrowser && touch ~/.cloakbrowser/.welcome_show && \ | |
| find /app/.venv -path "*/cloakbrowser/download.py" -exec sed -i 's/logger.info/logger.debug/g' {} + && \ | |
| python -c "from cloakbrowser import ensure_binary; ensure_binary()" && \ | |
| curl -L https://raw.githubusercontent.com/CloakHQ/CloakBrowser/refs/heads/main/bin/cloakserve -o /app/.venv/bin/cloakserve && \ | |
| sed -i 's/level=logging.INFO/level=logging.WARNING/g' /app/.venv/bin/cloakserve && \ | |
| sed -i '/logger = logging.getLogger("cloakserve")/a logger.setLevel(logging.INFO)' /app/.venv/bin/cloakserve && \ | |
| sed -i 's/"--disable-extensions",//g' /app/.venv/bin/cloakserve && \ | |
| curl -L "https://clients2.google.com/service/update2/crx?response=redirect&arch=x86-64&os_arch=x86-64&nacl_arch=x86-64&prod=chromecrx&prodchannel=unknown&prodversion=9999.0.9999.0&acceptformat=crx2,crx3&x=id%3Dddkjiahejlhfcafbddmgiahcphecmpfh%26uc" -o /tmp/ext.zip && \ | |
| mkdir -p /app/extensions/ublock && unzip -q /tmp/ext.zip -d /app/extensions/ublock || true && \ | |
| curl -L "https://clients2.google.com/service/update2/crx?response=redirect&arch=x86-64&os_arch=x86-64&nacl_arch=x86-64&prod=chromecrx&prodchannel=unknown&prodversion=9999.0.9999.0&acceptformat=crx2,crx3&x=id%3Dnngceckbapebfimnlniiiahkandclblb%26uc" -o /tmp/ext.zip && \ | |
| mkdir -p /app/extensions/bitwarden && unzip -q /tmp/ext.zip -d /app/extensions/bitwarden || true && \ | |
| curl -L "https://clients2.google.com/service/update2/crx?response=redirect&arch=x86-64&os_arch=x86-64&nacl_arch=x86-64&prod=chromecrx&prodchannel=unknown&prodversion=9999.0.9999.0&acceptformat=crx2,crx3&x=id%3Daapbdbdomjkkjkaonfhkkikfgjllcleb%26uc" -o /tmp/ext.zip && \ | |
| mkdir -p /app/extensions/gtranslate && unzip -q /tmp/ext.zip -d /app/extensions/gtranslate || true && \ | |
| curl -L "https://clients2.google.com/service/update2/crx?response=redirect&arch=x86-64&os_arch=x86-64&nacl_arch=x86-64&prod=chromecrx&prodchannel=unknown&prodversion=9999.0.9999.0&acceptformat=crx2,crx3&x=id%3Dkbfnbcaeplbcioakkpcpgfkobkghlhen%26uc" -o /tmp/ext.zip && \ | |
| mkdir -p /app/extensions/grammarly && unzip -q /tmp/ext.zip -d /app/extensions/grammarly || true && \ | |
| curl -L "https://clients2.google.com/service/update2/crx?response=redirect&arch=x86-64&os_arch=x86-64&nacl_arch=x86-64&prod=chromecrx&prodchannel=unknown&prodversion=9999.0.9999.0&acceptformat=crx2,crx3&x=id%3Dedibdbjcniadpccecjdfdjjppcpchdlm%26uc" -o /tmp/ext.zip && \ | |
| mkdir -p /app/extensions/cookies && unzip -q /tmp/ext.zip -d /app/extensions/cookies || true && \ | |
| curl -L "https://clients2.google.com/service/update2/crx?response=redirect&arch=x86-64&os_arch=x86-64&nacl_arch=x86-64&prod=chromecrx&prodchannel=unknown&prodversion=9999.0.9999.0&acceptformat=crx2,crx3&x=id%3Dladdjijkcfpakbbnnedbhnnciecidncp%26uc" -o /tmp/ext.zip && \ | |
| mkdir -p /app/extensions/yasearch && unzip -q /tmp/ext.zip -d /app/extensions/yasearch || true && \ | |
| curl -L "https://github.com/ClearURLs/Addon/releases/download/1.27.3/ClearURLs.zip" -o /tmp/ext.zip && \ | |
| mkdir -p /app/extensions/clearurls && unzip -q /tmp/ext.zip -d /app/extensions/clearurls || true && \ | |
| rm /tmp/ext.zip && \ | |
| chmod +x /app/.venv/bin/cloakserve && fc-cache -f && rm -rf /var/lib/apt/lists/* /root/.cache/* | |
| COPY --chmod=755 <<-"EOF" /app/start.sh | |
| #!/bin/bash | |
| export no_proxy="localhost,127.0.0.1,0.0.0.0" | |
| export NO_PROXY="localhost,127.0.0.1,0.0.0.0" | |
| export HTTPX_LOG_LEVEL=warning | |
| export DISPLAY=:99 | |
| Xvfb :99 -screen 0 1920x1080x24 -nolisten tcp & | |
| sleep 1 | |
| echo -e "\n==================================\nstarting chromium cdp server...\nconnect:\nwith sync_playwright() as p:\n browser = p.chromium.connect_over_cdp('https://username-spacename.hf.space?fingerprint=<seed>')\n==================================\n" | |
| exec /app/.venv/bin/cloakserve \ | |
| --port=7860 \ | |
| --proxy-server="socks5://127.0.0.1:25344" \ | |
| --log-level=3 \ | |
| --no-sandbox \ | |
| --disable-setuid-sandbox \ | |
| --disable-gpu \ | |
| --disable-vulkan \ | |
| --window-size=1920,1020 \ | |
| --start-maximized \ | |
| --headless=false \ | |
| --disable-dev-shm-usage \ | |
| --load-extension="/app/extensions/clearurls,/app/extensions/cookies,/app/extensions/grammarly,/app/extensions/gtranslate,/app/extensions/bitwarden,/app/extensions/ublock,/app/extensions/yasearch" | |
| EOF | |
| ENV AWG_ENDPOINT="engage.cloudflareclient.com:2408" | |
| CMD ["/bin/bash", "/app/start.sh"] |