mirror of
https://github.com/Dokploy/templates.git
synced 2026-07-12 01:15:24 +02:00
feat: add Openclaw template (#694)
* feat: rename Moltbot to Openclaw and update related configurations * fix: update Openclaw image version to 2026.1.29 in docker-compose.yml * fix: correct environment variable name for Openclaw gateway * fix: correct volume path for Openclaw workspace in docker-compose.yml * feat: rename Moltbot to Openclaw and update metadata * fix: moving 'openclaw' entry below so the file looks sorted * fix: add missing newline at end of meta.json * fix: update docker-compose.yml to use 'expose' instead of 'ports' and change bind option to 'lan' * feat: update Openclaw service configuration in docker-compose.yml and template.toml - Changed service name from 'openclaw-gateway' to 'openclaw' and updated image version. - Enhanced environment variables for better configuration management. - Added a new 'browser' service with health checks and updated volume paths. * refactor: update environment variable configuration in docker-compose.yml for Openclaw service --------- Co-authored-by: Mauricio Siu <siumauricio@icloud.com>
This commit is contained in:
@@ -1,35 +0,0 @@
|
||||
services:
|
||||
moltbot-gateway:
|
||||
image: ghcr.io/moltbot/clawdbot:2026.1.24-1
|
||||
environment:
|
||||
HOME: /home/node
|
||||
TERM: xterm-256color
|
||||
CLAWDBOT_GATEWAY_TOKEN: ${CLAWDBOT_GATEWAY_TOKEN}
|
||||
CLAUDE_AI_SESSION_KEY: ${CLAUDE_AI_SESSION_KEY}
|
||||
CLAUDE_WEB_SESSION_KEY: ${CLAUDE_WEB_SESSION_KEY}
|
||||
CLAUDE_WEB_COOKIE: ${CLAUDE_WEB_COOKIE}
|
||||
CLAWDBOT_GATEWAY_URL: ws://0.0.0.0:18789
|
||||
OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}
|
||||
volumes:
|
||||
- moltbot-config:/home/node/.clawdbot
|
||||
- moltbot-workspace:/home/node/clawd
|
||||
ports:
|
||||
- "18789"
|
||||
- "18790"
|
||||
init: true
|
||||
restart: unless-stopped
|
||||
command:
|
||||
[
|
||||
"node",
|
||||
"dist/index.js",
|
||||
"gateway",
|
||||
"--bind",
|
||||
"auto",
|
||||
"--port",
|
||||
"18789",
|
||||
"--allow-unconfigured"
|
||||
]
|
||||
|
||||
volumes:
|
||||
moltbot-config:
|
||||
moltbot-workspace:
|
||||
@@ -1,18 +0,0 @@
|
||||
[variables]
|
||||
gateway_token = "${password:32}"
|
||||
|
||||
|
||||
[config]
|
||||
[[config.domains]]
|
||||
serviceName = "moltbot-gateway"
|
||||
port = 18789
|
||||
host = "${domain}"
|
||||
|
||||
[config.env]
|
||||
CLAWDBOT_GATEWAY_TOKEN = "${gateway_token}"
|
||||
CLAWDBOT_GATEWAY_PORT = 18789
|
||||
CLAWDBOT_BRIDGE_PORT = 18790
|
||||
CLAWDBOT_GATEWAY_BIND="lan"
|
||||
CLAWDBOT_PLUGINS="discord,memory-core"
|
||||
# Get here https://openrouter.ai/
|
||||
OPENROUTER_API_KEY="YOUR-API-KEY"
|
||||
86
blueprints/openclaw/docker-compose.yml
Normal file
86
blueprints/openclaw/docker-compose.yml
Normal file
@@ -0,0 +1,86 @@
|
||||
services:
|
||||
openclaw:
|
||||
image: "coollabsio/openclaw:2026.2.6"
|
||||
environment:
|
||||
- AUTH_USERNAME=${AUTH_USERNAME}
|
||||
- AUTH_PASSWORD=${AUTH_PASSWORD}
|
||||
- OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN}
|
||||
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
|
||||
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
||||
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY}
|
||||
- GEMINI_API_KEY=${GEMINI_API_KEY}
|
||||
- XAI_API_KEY=${XAI_API_KEY}
|
||||
- GROQ_API_KEY=${GROQ_API_KEY}
|
||||
- MISTRAL_API_KEY=${MISTRAL_API_KEY}
|
||||
- CEREBRAS_API_KEY=${CEREBRAS_API_KEY}
|
||||
- VENICE_API_KEY=${VENICE_API_KEY}
|
||||
- MOONSHOT_API_KEY=${MOONSHOT_API_KEY}
|
||||
- KIMI_API_KEY=${KIMI_API_KEY}
|
||||
- MINIMAX_API_KEY=${MINIMAX_API_KEY}
|
||||
- ZAI_API_KEY=${ZAI_API_KEY}
|
||||
- AI_GATEWAY_API_KEY=${AI_GATEWAY_API_KEY}
|
||||
- OPENCODE_API_KEY=${OPENCODE_API_KEY}
|
||||
- SYNTHETIC_API_KEY=${SYNTHETIC_API_KEY}
|
||||
- COPILOT_GITHUB_TOKEN=${COPILOT_GITHUB_TOKEN}
|
||||
- XIAOMI_API_KEY=${XIAOMI_API_KEY}
|
||||
- OPENCLAW_PRIMARY_MODEL=${OPENCLAW_PRIMARY_MODEL}
|
||||
- DEEPGRAM_API_KEY=${DEEPGRAM_API_KEY}
|
||||
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
|
||||
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
|
||||
- AWS_REGION=${AWS_REGION:-us-east-1}
|
||||
- AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN}
|
||||
- BEDROCK_PROVIDER_FILTER=${BEDROCK_PROVIDER_FILTER:-anthropic}
|
||||
- OLLAMA_BASE_URL=${OLLAMA_BASE_URL}
|
||||
- PORT=8080
|
||||
- OPENCLAW_GATEWAY_PORT=18789
|
||||
- OPENCLAW_GATEWAY_BIND=${OPENCLAW_GATEWAY_BIND:-loopback}
|
||||
- OPENCLAW_STATE_DIR=/data/.openclaw
|
||||
- OPENCLAW_WORKSPACE_DIR=/data/workspace
|
||||
- BROWSER_CDP_URL=http://browser:9223
|
||||
- BROWSER_DEFAULT_PROFILE=${BROWSER_DEFAULT_PROFILE:-openclaw}
|
||||
- BROWSER_EVALUATE_ENABLED=${BROWSER_EVALUATE_ENABLED:-true}
|
||||
- BROWSER_SNAPSHOT_MODE=${BROWSER_SNAPSHOT_MODE:-efficient}
|
||||
- BROWSER_REMOTE_TIMEOUT_MS=${BROWSER_REMOTE_TIMEOUT_MS:-1500}
|
||||
- BROWSER_REMOTE_HANDSHAKE_TIMEOUT_MS=${BROWSER_REMOTE_HANDSHAKE_TIMEOUT_MS:-3000}
|
||||
- HOOKS_ENABLED=${HOOKS_ENABLED:-false}
|
||||
- HOOKS_PATH=${HOOKS_PATH:-/hooks}
|
||||
- MOONSHOT_BASE_URL=${MOONSHOT_BASE_URL:-https://api.moonshot.ai/v1}
|
||||
- KIMI_BASE_URL=${KIMI_BASE_URL:-https://api.moonshot.ai/anthropic}
|
||||
- TELEGRAM_BOT_TOKEN=$TELEGRAM_BOT_TOKEN
|
||||
- DISCORD_BOT_TOKEN=$DISCORD_BOT_TOKEN
|
||||
- SLACK_BOT_TOKEN=$SLACK_BOT_TOKEN
|
||||
- SLACK_APP_TOKEN=$SLACK_APP_TOKEN
|
||||
- WHATSAPP_ENABLED=$WHATSAPP_ENABLED
|
||||
- OPENCLAW_DOCKER_APT_PACKAGES=$OPENCLAW_DOCKER_APT_PACKAGES
|
||||
volumes:
|
||||
- "openclaw-data:/data"
|
||||
depends_on:
|
||||
browser:
|
||||
condition: service_healthy
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-sf", "http://127.0.0.1:8080/healthz"]
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
|
||||
|
||||
browser:
|
||||
image: "coollabsio/openclaw-browser:latest"
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
- CHROME_CLI=--remote-debugging-port=9222
|
||||
volumes:
|
||||
- "browser-data:/config"
|
||||
shm_size: 2g
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "bash -c ':> /dev/tcp/127.0.0.1/9222' || exit 1"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
|
||||
|
||||
volumes:
|
||||
openclaw-data:
|
||||
browser-data:
|
||||
@@ -1,6 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 16 16" role="img" aria-label="Pixel lobster">
|
||||
<rect width="16" height="16" fill="none"/>
|
||||
<!-- outline -->
|
||||
|
||||
<g fill="#3a0a0d">
|
||||
<rect x="1" y="5" width="1" height="3"/>
|
||||
<rect x="2" y="4" width="1" height="1"/>
|
||||
@@ -24,7 +25,7 @@
|
||||
<rect x="5" y="14" width="6" height="1"/>
|
||||
</g>
|
||||
|
||||
<!-- body -->
|
||||
|
||||
<g fill="#ff4f40">
|
||||
<rect x="5" y="3" width="6" height="1"/>
|
||||
<rect x="4" y="4" width="8" height="1"/>
|
||||
@@ -37,7 +38,7 @@
|
||||
<rect x="6" y="13" width="4" height="1"/>
|
||||
</g>
|
||||
|
||||
<!-- claws -->
|
||||
|
||||
<g fill="#ff775f">
|
||||
<rect x="1" y="6" width="2" height="1"/>
|
||||
<rect x="2" y="5" width="1" height="1"/>
|
||||
@@ -47,7 +48,7 @@
|
||||
<rect x="13" y="7" width="1" height="1"/>
|
||||
</g>
|
||||
|
||||
<!-- eyes -->
|
||||
|
||||
<g fill="#081016">
|
||||
<rect x="6" y="5" width="1" height="1"/>
|
||||
<rect x="9" y="5" width="1" height="1"/>
|
||||
@@ -56,5 +57,4 @@
|
||||
<rect x="6" y="4" width="1" height="1"/>
|
||||
<rect x="9" y="4" width="1" height="1"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
21
blueprints/openclaw/template.toml
Normal file
21
blueprints/openclaw/template.toml
Normal file
@@ -0,0 +1,21 @@
|
||||
[variables]
|
||||
gateway_token = "${password:32}"
|
||||
auth_username = "dokploy"
|
||||
auth_password = "${password:32}"
|
||||
|
||||
[config]
|
||||
[[config.domains]]
|
||||
serviceName = "openclaw"
|
||||
port = 8080
|
||||
host = "${domain}"
|
||||
|
||||
[config.env]
|
||||
OPENCLAW_GATEWAY_TOKEN = "${gateway_token}"
|
||||
OPENCLAW_GATEWAY_PORT = 18789
|
||||
AUTH_USERNAME="${auth_username}"
|
||||
AUTH_PASSWORD="${auth_password}"
|
||||
OPENCLAW_BRIDGE_PORT = 18790
|
||||
OPENCLAW_GATEWAY_BIND="lan"
|
||||
OPENCLAW_PLUGINS="discord,memory-core"
|
||||
# Get here https://openrouter.ai/
|
||||
OPENROUTER_API_KEY="YOUR-API-KEY"
|
||||
42
meta.json
42
meta.json
@@ -4026,27 +4026,6 @@
|
||||
"scheduling"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "moltbot",
|
||||
"name": "Moltbot",
|
||||
"version": "2026.1.25",
|
||||
"description": "WhatsApp gateway CLI with Pi RPC agent - self-hosted AI-powered messaging platform",
|
||||
"logo": "moltbot.svg",
|
||||
"links": {
|
||||
"github": "https://github.com/moltbot/moltbot",
|
||||
"website": "https://molt.bot",
|
||||
"docs": "https://docs.molt.bot"
|
||||
},
|
||||
"tags": [
|
||||
"whatsapp",
|
||||
"ai",
|
||||
"messaging",
|
||||
"chatbot",
|
||||
"gateway",
|
||||
"self-hosted",
|
||||
"automation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "morphos",
|
||||
"name": "Morphos",
|
||||
@@ -4541,6 +4520,27 @@
|
||||
"surrealdb"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "openclaw",
|
||||
"name": "Openclaw",
|
||||
"version": "2026.1.29",
|
||||
"description": "WhatsApp gateway CLI with Pi RPC agent - self-hosted AI-powered messaging platform",
|
||||
"logo": "openclaw.svg",
|
||||
"links": {
|
||||
"github": "https://github.com/openclaw/openclaw",
|
||||
"website": "https://openclaw.ai/",
|
||||
"docs": "https://docs.openclaw.ai/"
|
||||
},
|
||||
"tags": [
|
||||
"whatsapp",
|
||||
"ai",
|
||||
"messaging",
|
||||
"chatbot",
|
||||
"gateway",
|
||||
"self-hosted",
|
||||
"automation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "opengist",
|
||||
"name": "OpenGist",
|
||||
|
||||
Reference in New Issue
Block a user