#7133: feat: Automated Docker setup with environment-based configuration
docker
Cluster:
Docker and Deployment Improvements
## Description
Automated Docker setup with environment-based configuration for easier deployment.
## Changes
- **docker-entrypoint.sh**: Auto-onboarding script using environment variables
- **docker-compose.yml**: Added env var support for ports, bind mode, tokens
- **docker-setup.sh**: Simplified to manage .env and start containers
- **.env.example**: Configuration template for users
- **openclaw-docker**: Global CLI wrapper for Docker deployments
- **DOCKER_CLI_GUIDE.md**: Comprehensive CLI documentation
## Motivation
Makes Docker deployment a single command (`./docker-setup.sh`) with automatic configuration instead of manual onboarding steps.
## Testing
- ✅ Clean install tested
- ✅ Gateway starts and is accessible
- ✅ Configuration persists across restarts
- ✅ Plugin installation works
- ✅ CLI wrapper functional
- ✅ Build passes: `pnpm build && pnpm check`
## Docker Image
Published to Docker Hub: `syn0001/openclaw:latest`
https://hub.docker.com/r/syn0001/openclaw
## Usage Example
```bash
# One-command setup
./docker-setup.sh
# Global CLI
openclaw status
openclaw plugin-list
openclaw dashboard
```
## AI Disclosure
🤖 This PR was created with AI assistance (Antigravity/Claude). Code has been tested and reviewed.
## Breaking Changes
None - backward compatible.
<!-- greptile_comment -->
<h2>Greptile Overview</h2>
<h3>Greptile Summary</h3>
This PR introduces an automated Docker onboarding flow: `.env.example` is repurposed for gateway/CLI configuration, `docker-setup.sh` now creates `.env` and starts compose, `docker-entrypoint.sh` performs first-run non-interactive onboarding inside the container, and a helper wrapper (`openclaw-docker`) plus a CLI guide are added.
The overall direction makes container startup simpler, but a few pieces are currently brittle: the wrapper and docs contain hardcoded developer-local paths, the wrapper assumes a fixed container name, and the entrypoint builds the onboarding args as a single string (and logs it), which can break with real-world tokens/values and can leak secrets into container logs.
<h3>Confidence Score: 2/5</h3>
- Not safe to merge as-is due to hardcoded paths/container naming and brittle onboarding arg handling.
- Several issues will cause immediate breakage for most users (absolute `/Users/...` paths, fixed container name) and the onboarding entrypoint logs and word-splits sensitive env-derived args, which is error-prone and can leak secrets.
- openclaw-docker, DOCKER_CLI_GUIDE.md, docker-entrypoint.sh, docker-compose.yml
<!-- greptile_other_comments_section -->
<sub>(2/5) Greptile learns from your feedback when you react with thumbs up/down!</sub>
<!-- /greptile_comment -->
Most Similar PRs
#6698: feat: Add CLI wrapper for Docker integration and update documentation
by barshopen · 2026-02-01
88.1%
#9190: feat(docker): Add autonomous container self-restart and runtime pac...
by alexdredmon · 2026-02-05
86.2%
#9999: Docker: fix token mismatch and add dev setup workflow
by benclarkeio · 2026-02-06
85.7%
#13953: feat(docker): add .env template and improve Dockerfile
by n24q02m · 2026-02-11
84.4%
#23313: feat(docker): add optional build-arg OPENCLAW_INSTALL_DOCKER_CLI to...
by zhuxuwei88-bot · 2026-02-22
83.6%
#8050: fix: docker hardening
by christopherbarnett96 · 2026-02-03
83.3%
#11553: feat(docker): add sandbox browser service and documentation
by dangphdh · 2026-02-08
82.6%
#7342: fix(docker): ensure readability of docker-setup.sh
by esc-ouni · 2026-02-02
82.3%
#11915: Docs: Docker + reverse proxy deployment notes and pairing pitfalls
by walshd1 · 2026-02-08
81.5%
#21305: Fix/proxy-ip-allow-list
by janaka · 2026-02-19
81.4%