OpenClaw Docker: Self-Hosted AI Assistant
Deploy OpenClaw personal AI assistant with Docker. Multi-channel support, flexible LLM providers, Umbrel-optimized. Self-hosted AI control.
Originally published:
OpenClaw Docker: Self-Hosted AI Assistant in a Container
OpenClaw Docker is a containerized deployment of OpenClaw (HAGI), a personal AI assistant framework designed for self-hosted environments. This project packages OpenClaw into a production-ready Docker image optimized for Umbrel and other decentralized platforms, enabling developers and operators to run a fully-featured AI agent locally with support for multiple communication channels and LLM providers.
The significance of this project lies in its democratization of AI infrastructure. Rather than relying on centralized services, users gain complete control over their AI assistant's deployment, data, and integrations. The Docker-first approach eliminates dependency management friction and makes OpenClaw accessible to operators without deep system administration expertise.
Core Features
- Multi-Channel Communication: Native support for Telegram, WhatsApp, Discord, Slack, MS Teams, and Signal—configure via environment variables without code changes
- Flexible LLM Providers: Compatible with Anthropic Claude, OpenAI GPT, MiniMax, OpenRouter, Moonshot, GLM, and local models (Ollama). Auto-selects based on available API keys or explicit override
- Umbrel-Native: Optimized for Umbrel's self-hosted infrastructure with simplified networking and volume management
- Calendar Versioning: Tracks OpenClaw's release cycle with semantic versioning (e.g., v2026.1.30)
- Agent Capabilities: Configurable memory search, browser automation, shell execution, and customizable timeouts
- Text-to-Speech Integration: ElevenLabs support for voice output via the sag subsystem
- Non-Root Security Model: Runs as dedicated openclaw user (UID 1000) following least-privilege principles
- WebSocket Gateway: HTTP and WebSocket endpoints for integration with mobile nodes and external applications
Getting Started
Fastest Path (Docker Compose): Clone the repository, copy .env.example to .env, add your API credentials, and run docker compose up -d. Access the web interface at http://localhost:18789/chat.
Direct Docker Run: Use the provided command with your API keys and volume mounts. The image auto-selects an LLM provider or respects your explicit OPENCLAW_MODEL override.
Local Models: For Ollama on the host machine, set OPENCODE_BASE_URL=http://host.docker.internal:11434/v1. On Umbrel with Ollama in a sibling container, reference the container name via Docker's internal network (e.g., http://ollama_server_1:11434/v1).
Channel Configuration
Each communication channel requires minimal setup via environment variables. Telegram uses TELEGRAM_BOT_TOKEN from BotFather. WhatsApp requires QR code scanning after enabling WHATSAPP_ENABLED=true. Discord, Slack, and MS Teams each need tokens/credentials from their respective developer portals. Signal requires a registered phone number. Access control is configurable per channel with allowlist or pairing policies.
LLM Provider Selection
The image ships with environment variables for all major providers: Anthropic, OpenAI, MiniMax, OpenRouter, Moonshot, GLM, and Ollama-compatible endpoints. Set as many credentials as desired; the container auto-detects and uses the first available. Override with OPENCLAW_MODEL to specify an explicit model (e.g., anthropic/claude-sonnet-4 or openai/gpt-4o).
Gateway and Networking
The gateway listens on port 18789 for HTTP, WebSocket, and web chat traffic. Port 18790 serves the bridge protocol for mobile node connections. Bind mode options (local, lan, tailnet) control network accessibility. Gateway mode can be set to local or cloud for different deployment topologies.
Agent Runtime Configuration
Customize behavior with AGENT_TIMEOUT (default 600 seconds), AGENT_TIMEZONE for locale awareness, and feature flags: ENABLE_MEMORY_SEARCH, ENABLE_BROWSER, and ENABLE_EXEC. Shell command execution timeout is separately controlled via EXEC_TIMEOUT.
Who This Is For
Self-Hosted Infrastructure Operators: Teams running Umbrel or similar platforms seeking to integrate an AI assistant without external dependencies.
Privacy-First Developers: Engineers building applications where data sovereignty and local-first architecture are requirements.
Multi-Channel Bot Builders: Developers needing a unified interface to deploy the same AI logic across Telegram, Discord, Slack, and other platforms simultaneously.
Enterprises with Local Model Strategies: Organizations using Ollama or compatible local LLM servers and needing containerized access layers.
Hobbyists and Homelab Enthusiasts: Users running personal infrastructure stacks who want accessible AI capabilities without recurring API costs.
Resource Requirements
The container requires minimal overhead for the gateway and channel adapters. Actual resource consumption depends on the LLM provider: API-based providers (Claude, GPT) add negligible overhead; local models (Ollama) shift resource demand to the model container, which runs separately.
Production Considerations
Data persists in two volumes: /home/openclaw/.openclaw stores configuration and credentials; /home/openclaw/clawd contains workspace, memory, and skills. Implement volume backups for credentials and important state. The non-root user model eliminates privilege escalation vectors. Consider reverse proxy setup (nginx/Caddy) for TLS termination and multi-node load balancing in production environments.
Community and Maintenance
The project maintains 17 stars and 6 forks with no open issues. Recent updates indicate active maintenance (last push February 2026). GitHub workflows automate builds and testing. The repository includes comprehensive documentation via CLAUDE.md, suggesting AI-assisted development practices.
Integration Patterns
The WebSocket gateway enables custom frontend development separate from the web chat interface. Mobile apps can connect via the bridge protocol on port 18790. Skill extension is supported via the workspace directory, allowing custom tool definitions without image rebuilds. The auto-discovery of API keys simplifies CI/CD pipelines—credentials can be injected at runtime without code coupling.
Related: umbrel docker-deployment ollama-integration
Source: GitHub repository zot24/openclaw-docker
Original Source
https://github.com/zot24/openclaw-docker
Last updated: