Files
open-harness/docker/Dockerfile
T
ryaneggzandClaude Opus 4.6 75df3ef688 fix: add jq to Dockerfile, archive Ralph run, sync ralph.sh
- Add jq to base apt-get install in Dockerfile (fixes notify_slack.sh hook)
- Archive completed feat/4-api-health Ralph run to .ralph/archives/
- ralph.sh: archive on completion + max-iteration exit, use mv instead of cp
- Sync next-env.d.ts and MEMORY.md with latest changes

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 22:26:25 -06:00

34 lines
1.2 KiB
Docker

FROM debian:bookworm-slim
RUN apt-get update \
&& apt-get install -y --no-install-recommends ca-certificates cron curl wget sudo gosu gnupg jq procps \
&& rm -rf /var/lib/apt/lists/*
ENV TZ=America/Denver
# Node.js 22.x
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
&& apt-get install -y --no-install-recommends nodejs \
&& rm -rf /var/lib/apt/lists/*
# Agent CLIs
RUN npm install -g @anthropic-ai/claude-code @openai/codex @mariozechner/pi-coding-agent
RUN useradd -m -s /bin/bash sandbox \
&& echo "sandbox ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/sandbox \
&& groupadd -f docker && usermod -aG docker sandbox \
&& echo "alias claude='claude --dangerously-skip-permissions'" >> /home/sandbox/.bashrc \
&& echo "alias codex='codex --full-auto'" >> /home/sandbox/.bashrc \
&& echo "alias pi='pi'" >> /home/sandbox/.bashrc
COPY install/entrypoint.sh /usr/local/bin/entrypoint.sh
RUN chmod +x /usr/local/bin/entrypoint.sh
COPY --chown=sandbox:sandbox install/ /home/sandbox/install/
RUN chmod +x /home/sandbox/install/*.sh
COPY --chown=sandbox:sandbox .openharness/ /home/sandbox/.openharness/
COPY --chown=sandbox:sandbox workspace/ /home/sandbox/workspace/
WORKDIR /home/sandbox/workspace
ENTRYPOINT ["entrypoint.sh"]
CMD ["bash"]