v1 - basic functionality

This commit is contained in:
2026-04-11 09:26:46 -04:00
commit 243b84946f
5 changed files with 166 additions and 0 deletions

37
docker-compose.yml Normal file
View File

@ -0,0 +1,37 @@
services:
claude-code:
build: .
image: claude-code:local
container_name: claude-code
# Pass your Anthropic API key in from the host environment,
# or drop it into a .env file alongside this compose file.
# environment:
# - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:?Set ANTHROPIC_API_KEY in your environment or .env file}
volumes:
# Fixed home volume — persists Claude Code install, config, and credentials
# across container restarts and image rebuilds.
- claude-home:/home/coder
# Swappable project folder — override PROJECT_DIR to point at any directory:
# PROJECT_DIR=/path/to/myproject docker compose run --rm claude-code
- ${PROJECT_DIR:-./code}:/code
# Drop all Linux capabilities and disable privilege escalation —
# Claude Code doesn't need any of them.
cap_drop:
- ALL
security_opt:
- no-new-privileges:true
# Interactive terminal so `claude` works properly
stdin_open: true
tty: true
working_dir: /code
volumes:
claude-home:
# Named volume — Docker manages it; survives `docker compose down`
# (use `docker compose down -v` to wipe it along with the install)