Sandbox Docker Claude Code
Executer Claude Code depuis une sandbox Docker Dagu.
Installez Claude Code dans une image runner, verifiez le binaire claude et passez les credentials seulement a l'etape harness qui en a besoin. Dagu garde schedule, logs, retry policy et limite container dans 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.Utilise le package npm officiel @anthropic-ai/claude-code.
Verifie claude --version via Dagu avant les appels modele.
Passe ANTHROPIC_API_KEY a la frontiere de l'etape container.
Fonctionne avec container racine ou par etape selon la portee du credential.
Image runner
Claude Code peut etre installe comme package npm global sur Node.js 18 ou plus. L'exemple utilise Node 22 et verifie le binaire pendant le 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"]Smoke test
Lancez d'abord un shell provider pour verifier l'image et le chemin du binaire sans envoyer de 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 claudeCredentials
Pour un run non interactif simple, passez ANTHROPIC_API_KEY au container. Les autres methodes d'auth Claude Code sont possibles si leurs fichiers ou variables sont disponibles dans ce container.
Portee du container
Preferez un container d'etape pour une seule tache Claude Code. Utilisez un container racine seulement si des etapes build ou test doivent tourner dans la meme image avant que Claude Code lise le workspace.
Autres pages sandbox
Sandbox Docker Claude Code
Comprendre comment Dagu choisit la portee Docker.
Codex dans DockerExecuter Codex avec CODEX_HOME monte ou CODEX_API_KEY.
OpenCode dans DockerExecuter OpenCode avec credentials provider montes ou passes.
CLI personnalisee dans DockerAdapter une autre CLI a la forme harness provider de Dagu.