🐳 feat: add Docker Compose support for easy deployment

Add docker-compose.yml with gateway and CLI services, resource limits,
and comprehensive documentation for Docker Compose usage.
This commit is contained in:
Rajasimman S
2026-02-17 18:50:03 +05:30
parent 8053193a36
commit c03f2b670b
2 changed files with 65 additions and 0 deletions

View File

@@ -811,6 +811,39 @@ nanobot cron remove <job_id>
> [!TIP]
> The `-v ~/.nanobot:/root/.nanobot` flag mounts your local config directory into the container, so your config and workspace persist across container restarts.
### Using Docker Compose (Recommended)
The easiest way to run nanobot with Docker:
```bash
# 1. Initialize config (first time only)
docker compose run --rm nanobot-cli onboard
# 2. Edit config to add API keys
vim ~/.nanobot/config.json
# 3. Start gateway service
docker compose up -d nanobot-gateway
# 4. Check logs
docker compose logs -f nanobot-gateway
# 5. Run CLI commands
docker compose run --rm nanobot-cli status
docker compose run --rm nanobot-cli agent -m "Hello!"
# 6. Stop services
docker compose down
```
**Features:**
- ✅ Resource limits (1 CPU, 1GB memory)
- ✅ Auto-restart on failure
- ✅ Shared configuration using YAML anchors
- ✅ Separate CLI profile for on-demand commands
### Using Docker directly
Build and run nanobot in a container:
```bash