FROM node:22-bookworm-slim ENV DEBIAN_FRONTEND=noninteractive \ PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 \ PORT=7860 \ HERMES_INTERNAL_PORT=8642 \ HERMES_HOME=/tmp/.hermes \ HERMES_WORKSPACE_DIR=/opt/hermes-workspace \ HERMES_AGENT_DIR=/opt/hermes-agent RUN apt-get update \ && apt-get install -y --no-install-recommends \ bash \ build-essential \ ca-certificates \ python3 \ python3-pip \ python3-venv \ && rm -rf /var/lib/apt/lists/* RUN mkdir -p /data /app && chmod 0777 /data RUN corepack enable && corepack prepare pnpm@10.18.3 --activate WORKDIR ${HERMES_WORKSPACE_DIR} COPY hermes-workspace-1.0.0/package.json hermes-workspace-1.0.0/pnpm-lock.yaml ./ COPY hermes-workspace-1.0.0/ ./ RUN pnpm install --no-frozen-lockfile \ && pnpm build RUN python3 -m venv /opt/hermes-venv WORKDIR ${HERMES_AGENT_DIR} COPY hermes-agent-2026.4.8/ ./ RUN /opt/hermes-venv/bin/pip install --upgrade pip setuptools wheel \ && /opt/hermes-venv/bin/pip install \ "aiohttp>=3.13.3,<4" \ "huggingface_hub>=0.30.0" \ "lark-oapi" \ "websockets" \ && /opt/hermes-venv/bin/pip install -e . COPY --chmod=755 start.sh /usr/local/bin/start.sh COPY --chmod=755 hermes_backup.py /app/hermes_backup.py COPY space-access-proxy.mjs /usr/local/bin/space-access-proxy.mjs ENV PATH="/opt/hermes-venv/bin:${PATH}" EXPOSE 7860 CMD ["/usr/local/bin/start.sh"]