# OpenClaw Deployment Custom OpenClaw Gateway build for ARM64 with Google Workspace tools. ## What's in Here - `stack.yml` - Docker Swarm stack for Dokploy - `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 cd docker && ./build-arm64.sh # 3. 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 docker stack deploy -c stack.yml openclaw # 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 ``` ## Custom Image Includes - `gog` - Google Workspace CLI (Gmail, Calendar, Drive, Sheets, Docs) - `gcloud` - Google Cloud SDK - `jq`, `curl`, `htop`, `tree` - General utilities - SSH key persistence in named volume ## Volumes | Volume | Mount | Purpose | |--------|-------|---------| | `openclaw-config` | `/home/node/.openclaw` | OpenClaw runtime data | | `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) | See `AGENTS.md` for full deployment details.