51 lines
1.6 KiB
Docker
51 lines
1.6 KiB
Docker
# ClawBench HF Docker Space
|
|
# Layer the benchmark harness on top of a pinned OpenClaw image.
|
|
|
|
ARG OPENCLAW_IMAGE=ghcr.io/openclaw/openclaw@sha256:2e32f4f2e4f653f12d5dc6e5c93cc71e60f49d1dfaf061b18e53c3e61a38fb48
|
|
FROM ${OPENCLAW_IMAGE}
|
|
|
|
USER root
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
RUN apt-get update && \
|
|
apt-get install -y python3-pip python-is-python3 && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN ln -s /app /openclaw
|
|
|
|
ENV PLAYWRIGHT_BROWSERS_PATH=/ms-playwright
|
|
RUN npx -y playwright@1.59.1 install --with-deps chromium && \
|
|
CHROME_PATH="$(find /ms-playwright -path '*/chrome' -type f | sort | head -n 1)" && \
|
|
test -x "$CHROME_PATH" && \
|
|
ln -sf "$CHROME_PATH" /usr/bin/chromium
|
|
|
|
ENV HOME=/home/node PATH=/home/node/.local/bin:$PATH
|
|
WORKDIR /home/node/app
|
|
|
|
COPY --chown=node:node pyproject.toml README.md CLAWBENCH_V0_4_SPEC.md PARTNER_TRACE_SPEC.md ./
|
|
COPY --chown=node:node clawbench/ clawbench/
|
|
COPY --chown=node:node tasks-public/ tasks-public/
|
|
COPY --chown=node:node tasks-domain/ tasks-domain/
|
|
COPY --chown=node:node profiles/ profiles/
|
|
COPY --chown=node:node baselines/ baselines/
|
|
COPY --chown=node:node app.py .
|
|
|
|
RUN python3 -m pip install --break-system-packages --no-cache-dir .
|
|
|
|
RUN mkdir -p \
|
|
/data/results \
|
|
/data/queue \
|
|
/home/node/.openclaw/agents/dev \
|
|
/home/node/.openclaw/agents/main/agent && \
|
|
chown -R node:node /data /home/node/.openclaw && \
|
|
chmod -R 775 /data /home/node/.openclaw
|
|
|
|
USER node
|
|
|
|
ENV GATEWAY_PORT=18789
|
|
ENV OPENCLAW_HOME=/home/node
|
|
ENV OPENCLAW_STATE_DIR=/home/node/.openclaw
|
|
|
|
EXPOSE 7860
|
|
CMD ["python", "app.py"]
|