Sandbox Docker de Claude Code
Ejecuta Claude Code desde un sandbox Docker de Dagu.
Instala Claude Code en una imagen runner, verifica el binario claude y pasa credenciales solo al paso harness que las necesita. Dagu mantiene agenda, logs, retry policy y frontera de contenedor en YAML.
steps:
- id: claude_review
action: harness.run
container:
image: dagu-claude-runner:local
pull_policy: never
working_dir: /workspace
volumes:
- .:/workspace:ro
env:
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
with:
provider: claude
model: sonnet
prompt: |
Review this repository and summarize the highest-risk issues.Usa el paquete npm oficial @anthropic-ai/claude-code.
Verifica claude --version mediante Dagu antes de llamadas al modelo.
Pasa ANTHROPIC_API_KEY en la frontera del paso container.
Funciona con container raiz o por paso segun el alcance de credenciales.
Imagen runner
Claude Code puede instalarse como paquete npm global en Node.js 18 o superior. El ejemplo usa Node 22 y verifica el binario durante el build.
FROM node:22-bookworm-slim
RUN apt-get update \
&& apt-get install -y --no-install-recommends ca-certificates git ripgrep bash \
&& rm -rf /var/lib/apt/lists/*
RUN npm install -g @anthropic-ai/claude-code
RUN claude --version
WORKDIR /workspace
ENTRYPOINT []
CMD ["bash"]Prueba de humo
Primero ejecuta un shell provider para verificar la imagen y la ruta del binario sin enviar prompt a Claude.
type: graph
harnesses:
shell:
binary: sh
prefix_args:
- -c
prompt_mode: arg
steps:
- id: claude_version
action: harness.run
container:
image: dagu-claude-runner:local
pull_policy: never
with:
provider: shell
prompt: |
set -eu
claude --version
command -v claudeCredenciales
Para una ejecucion no interactiva simple, pasa ANTHROPIC_API_KEY al contenedor. Otros metodos de auth de Claude Code tambien funcionan si sus archivos o variables estan disponibles dentro del mismo contenedor.
Alcance del container
Prefiere container por paso para una sola tarea Claude Code. Usa container raiz solo si pasos build o test deben correr en la misma imagen antes de que Claude Code lea el workspace.
Mas paginas sandbox
Sandbox Docker de Claude Code
Entiende como Dagu elige el alcance del Docker container.
Codex en DockerEjecuta Codex con CODEX_HOME montado o CODEX_API_KEY.
OpenCode en DockerEjecuta OpenCode con credenciales provider montadas o pasadas.
CLI personalizada en DockerMapea otra CLI al formato harness provider de Dagu.