← Back to PRs

#7133: feat: Automated Docker setup with environment-based configuration

by synetalsolutions open 2026-02-02 12:44 View on GitHub →
docker
## 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