Simplify to named volumes only (cattle not pets)

This commit is contained in:
Klaatu
2026-02-20 18:56:03 +00:00
parent e4215ca329
commit 3df8a2143e
4 changed files with 33 additions and 48 deletions

View File

@@ -4,29 +4,26 @@ Custom OpenClaw Gateway build for ARM64 with Google Workspace tools.
## What's in Here
- `stack.yml` - Docker Swarm stack for Dokploy
- `stack.yml` - Docker Swarm stack for Dokploy (pure named volumes)
- `docker/` - Custom image build (ARM64 + gog + gcloud)
- `config/` - Runtime configs (volume-mounted)
- `secrets/` - Credentials (volume-mounted, gitignored)
- `AGENTS.md` - Full deployment guide
## Quick Start
```bash
# 1. Put your Google OAuth client secret in place
cp /path/to/client_secret.json secrets/google-client-secret.json
# 2. Build the custom image
# 1. Build the custom image
cd docker && ./build-arm64.sh
# 3. Push to your registry
# 2. Push to your registry
docker tag openclaw:custom-arm64 registry.lan/openclaw:latest
docker push registry.lan/openclaw:latest
# 4. Deploy
export OPENCLAW_IMAGE=registry.lan/openclaw:latest
# 3. Deploy
docker stack deploy -c stack.yml openclaw
# 4. Copy in your Google client secret
docker cp /path/to/client_secret.json $(docker ps -q -f name=openclaw-gateway):/home/node/.openclaw/google-client-secret.json
# 5. Setup gog (Google Workspace)
docker exec -it $(docker ps -q -f name=openclaw-gateway) setup-gog.sh
docker exec -it $(docker ps -q -f name=openclaw-gateway) gog auth add you@gmail.com --services gmail,calendar,drive
@@ -39,14 +36,24 @@ docker exec -it $(docker ps -q -f name=openclaw-gateway) gog auth add you@gmail.
- `jq`, `curl`, `htop`, `tree` - General utilities
- SSH key persistence in named volume
## Volumes
## Volumes (Named Only)
| Volume | Mount | Purpose |
|--------|-------|---------|
| `openclaw-config` | `/home/node/.openclaw` | OpenClaw runtime data |
| `openclaw-config` | `/home/node/.openclaw` | Configs, secrets, SSH keys, gog tokens |
| `openclaw-workspace` | `/home/node/.openclaw/workspace` | Agent workspace |
| `gog-data` | `/data/gog` | gog OAuth tokens |
| Host `./config` | `/data/config` | Config files (ro) |
| Host `./secrets` | `/data/secrets` | Secrets (ro) |
| `gog-data` | `/home/node/.openclaw/gog` | gog OAuth tokens (separate for clarity) |
**To access files in volumes:**
```bash
# Copy in
docker cp localfile.txt container:/home/node/.openclaw/
# Copy out
docker cp container:/home/node/.openclaw/file.txt .
# Or exec in
docker exec -it container bash
```
See `AGENTS.md` for full deployment details.