Enables Ralph to run inside a Docker container for Windows users (via Docker Desktop) and anyone preferring containerized execution. New files: - Dockerfile (Debian slim + Node.js 20 + all Ralph dependencies) - docker-compose.yml for easy startup - docker/docker-entrypoint.sh with UID/GID remapping - docker/ralph-docker (bash wrapper) and ralph-docker.ps1 (PowerShell) - .gitattributes to prevent Windows CRLF line ending corruption - .dockerignore for clean build context - .github/workflows/docker.yml CI workflow - docs/user-guide/04-docker-setup.md comprehensive documentation Updated: README.md, CLAUDE.md, docs/user-guide/README.md, .gitignore https://claude.ai/code/session_01SNzxUdH1Udf26rN3RKNNzu
40 lines
1 KiB
PowerShell
40 lines
1 KiB
PowerShell
# ralph-docker.ps1 - Convenience wrapper for running Ralph in Docker on Windows
|
|
#
|
|
# Usage:
|
|
# .\docker\ralph-docker.ps1 [ralph-options]
|
|
#
|
|
# Examples:
|
|
# .\docker\ralph-docker.ps1 --help
|
|
# .\docker\ralph-docker.ps1 --monitor
|
|
# .\docker\ralph-docker.ps1 --live --verbose
|
|
#
|
|
# Environment:
|
|
# ANTHROPIC_API_KEY Required. Your Anthropic API key.
|
|
# RALPH_IMAGE Optional. Docker image name (default: ralph-claude-code:latest)
|
|
|
|
param(
|
|
[Parameter(ValueFromRemainingArguments = $true)]
|
|
[string[]]$RalphArgs
|
|
)
|
|
|
|
$ImageName = if ($env:RALPH_IMAGE) { $env:RALPH_IMAGE } else { "ralph-claude-code:latest" }
|
|
|
|
if (-not $env:ANTHROPIC_API_KEY) {
|
|
Write-Error "ANTHROPIC_API_KEY environment variable is not set."
|
|
Write-Host 'Set it first: $env:ANTHROPIC_API_KEY = "sk-ant-..."'
|
|
exit 1
|
|
}
|
|
|
|
$DockerArgs = @(
|
|
"run", "-it", "--rm",
|
|
"-e", "ANTHROPIC_API_KEY=$env:ANTHROPIC_API_KEY",
|
|
"-v", "${PWD}:/workspace",
|
|
$ImageName,
|
|
"ralph"
|
|
)
|
|
|
|
if ($RalphArgs) {
|
|
$DockerArgs += $RalphArgs
|
|
}
|
|
|
|
& docker @DockerArgs
|