Production-ready Docker setup for Vibe-Kanban + Claude Code AI coding platform.
- π€ Vibe-Kanban - AI agent orchestration platform
- π» code-server - Browser-based VS Code
- π Secure Secrets - Project secrets isolated from AI agents
- π¦ Persistent Data - Projects and settings survive restarts
- π³ One Command Deploy - Get started in minutes
git clone https://github.com/halilbarim/vibe-stack.git
cd vibe-stackcp .env.example .env
# Edit .env with your settingscp agents/claude/settings.json.example agents/claude/settings.jsonEdit agents/claude/settings.json with your API key:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "your-api-key",
"ANTHROPIC_BASE_URL": "https://api.anthropic.com"
}
}docker-compose up -ddocker exec -it vibe-server su - node -c "claude --dangerously-skip-permissions"- Select theme with arrow keys
- Copy the login URL from terminal
- Open in browser, login with your Anthropic account
- Click "Authorize" and copy the token
- Paste token in terminal and press Enter
- Type
exittwice to leave container
| Service | URL | Password |
|---|---|---|
| Vibe-Kanban | http://localhost:4000 | - |
| VS Code | http://localhost:8443 | From .env file |
vibe-stack/
βββ docker-compose.yml # Main configuration
βββ .env # Environment variables
βββ agents/
β βββ claude/ # Claude Code settings (accessible by agent)
β βββ settings.json
βββ secrets/ # Project secrets (NOT accessible by agent)
β βββ your-project/
β βββ .env.*
βββ HELPER.md # Docker command reference
βββ README.md
- Project Secrets: Stored in
/root/secrets- agent cannot access - Claude Config: Stored in
agents/claude- agent can access (required) - SSH Keys: Mounted read-only
# Start all services
docker-compose up -d
# Stop all services
docker-compose down
# View logs
docker-compose logs -f
# Restart services
docker-compose restart
# Enter container shell
docker exec -it vibe-server bash
# Check status
docker-compose ps| Container | Image Size | RAM |
|---|---|---|
| vibe-kanban | ~200 MB | ~300 MB |
| code-server | ~500 MB | ~400 MB |
- Create folder:
secrets/your-project/ - Add env files:
.env.development,.env.production - Restart:
docker-compose restart vibe-kanban
Secrets are automatically copied to /repos/your-project/.env.*.local
Set in .env:
CODE_SERVER_PASSWORD=your-secure-password
This setup supports using zhipu.ai GLM-4 models as an alternative to Claude. Edit agents/claude/settings.json:
{
"hasAcknowledgedDangerousSkipPermissions": true,
"hasCompletedOnboarding": true,
"theme": "dark",
"env": {
"ANTHROPIC_AUTH_TOKEN": "your-z-ai-api-key",
"ANTHROPIC_BASE_URL": "https://api.z.ai/api/anthropic",
"API_TIMEOUT_MS": "3000000",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "glm-4.5-air",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "glm-4.7",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "glm-4.7"
}
}| Model | Maps To |
|---|---|
| Haiku | glm-4.5-air |
| Sonnet | glm-4.7 |
| Opus | glm-4.7 |
- HELPER.md - Docker command reference
docker-compose down -vdeletes all data - use with caution- Claude login required after
down -vor first setup - Normal restarts preserve all data
MIT License - See LICENSE for details.
Made with β€οΈ for AI-powered development