A Docker image that provides Claude Code CLI in a containerized environment with Python and Node.js.
- Python 3.10 slim base image
- Node.js and npm pre-installed
- Claude Code CLI installed globally
- Non-root user for security
- Ready-to-use development environment
docker pull phmatray/docker-claude:latest
docker run -it phmatray/docker-claude:latest
docker pull ghcr.io/atypical-consulting/docker-claude:latest
docker run -it ghcr.io/atypical-consulting/docker-claude:latest
docker build -t phmatray/docker-claude .
docker run -it phmatray/docker-claude
Mount any local repository or directory into the container:
docker run -it --rm \
-v $(pwd)/path/to/your/project:/app:rw \
phmatray/docker-claude
Example:
docker run -it --rm \
-v $(pwd)/~/repo/github/my-project:/app:rw \
phmatray/docker-claude
Once inside the container:
# Initialize Claude Code
claude init
# Start using Claude Code
claude "help me with my Python project"
This repository includes automated Docker builds via GitHub Actions. Images are automatically built and published to both Docker Hub and GitHub Container Registry on:
- Pushes to
main
branch (triggers auto-versioning and release) - Version tags (e.g.,
v1.0.0
) - Pull requests (build only, no push)
Every push to main
automatically:
- Generates a version number (format:
YYYY.MM.DD-commit_count
) - Builds and publishes multi-architecture images (linux/amd64, linux/arm64)
- Creates a GitHub release with the new version
latest
- Latest build from main branchmain
- Main branch buildsYYYY.MM.DD-N
- Auto-generated versions (e.g.,2024.01.15-42
)v1.0.0
- Manual version releases1.0
- Major.minor version1
- Major version only
- Runs as non-root user
codeuser
- Working directory owned by non-root user
- Minimal attack surface with slim Python image
[Add your license here]