hermes-agent / Dockerfile
HackerBol's picture
Upload Dockerfile with huggingface_hub
a6ec6ce verified
Raw
History Blame Contribute Delete
1.51 kB
FROM python:3.13
# Install system dependencies for Playwright + Node.js (for MCP servers)
RUN apt-get update && apt-get install -y \
git git-lfs ffmpeg libsm6 libxext6 cmake rsync libgl1 \
libnss3 libnspr4 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 \
libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 \
libgbm1 libpango-1.0-0 libcairo2 libasound2 \
curl \
&& rm -rf /var/lib/apt/lists/* \
&& git lfs install
# Install Node.js 20.x (required for MCP servers — most are npm packages)
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
&& apt-get install -y nodejs \
&& node --version \
&& npm --version
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir pip -U && \
pip install --no-cache-dir \
datasets "huggingface-hub>=0.30" "hf-transfer>=0.1.4" "protobuf<4" "click<8.1"
RUN pip install --no-cache-dir -r requirements.txt \
gradio[oauth]==4.44.1 "uvicorn>=0.14.0" "websockets>=10.4" spaces
# Install curl_cffi for Chrome TLS fingerprint spoofing (Signal #51)
RUN pip install --no-cache-dir curl_cffi
# Install Playwright browsers
RUN playwright install chromium
RUN playwright install-deps chromium || true
# Pre-install popular MCP servers (cached for faster startup)
RUN npm install -g @anthropic/github-mcp 2>/dev/null || true
RUN npm install -g @anthropic/filesystem-mcp 2>/dev/null || true
COPY . .
EXPOSE 7860
ENV GRADIO_SERVER_NAME=0.0.0.0
ENV GRADIO_SERVER_PORT=7860
CMD ["python", "app.py"]