mirror of
https://github.com/qingchencloud/clawpanel.git
synced 2026-05-11 18:10:41 +08:00
feat: 飞书官方插件迁移 + 配对审批 + Gateway防卡死 + 微信升级修复 + 更新检测修复
- 飞书渠道从 @openclaw/feishu 迁移到 @larksuite/openclaw-lark 官方插件 - 保存飞书配置时自动禁用旧 feishu 插件,防止新旧插件冲突 - 所有主要渠道(飞书/Telegram/Discord/Slack)启用配对审批UI - gateway_command 增加20s超时,超时后force-kill+fresh start - 全平台启动前端口占用检查,防止Guardian无限拉起 - Linux gateway_command 补齐 Duration 导入和 cleanup_zombie 实现 - Guardian自动守护在Tauri桌面端也启用,轮询间隔30s→15s - 微信渠道:升级操作不再弹出扫码二维码,按钮文案区分安装/升级 - 版本更新检测:CI不再将minAppVersion写死为当前版本 - 部署脚本增强OpenClaw检测,支持已安装的官方版 - 日间/夜间模式圆形扩散切换动画(View Transitions API) - API错误信息完整展示(429限流等),URL自动转可点击链接 - 第三方API接入引导优化:移除内置密钥,引导式流程 - 修复全平台 Clippy 警告(strip_prefix/dead_code/unnecessary_unwrap等) - Rust代码格式化修复(cargo fmt) - toast组件支持HTML内容渲染 - Rust后端test_model返回详细错误信息
This commit is contained in:
163
docker-compose.yml
Normal file
163
docker-compose.yml
Normal file
@@ -0,0 +1,163 @@
|
||||
# =============================================================================
|
||||
# ClawPanel Docker Compose 配置
|
||||
# =============================================================================
|
||||
# 使用方法:
|
||||
# 1. 快速启动: docker compose up -d
|
||||
# 2. 查看日志: docker compose logs -f
|
||||
# 3. 停止服务: docker compose down
|
||||
# 4. 重新构建: docker compose up -d --build
|
||||
# =============================================================================
|
||||
|
||||
services:
|
||||
# ---------------------------------------------------------------------------
|
||||
# ClawPanel Web 服务
|
||||
# ---------------------------------------------------------------------------
|
||||
clawpanel:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
# 使用 BuildKit 构建缓存
|
||||
cache_from:
|
||||
- clawpanel:build-cache
|
||||
args:
|
||||
- NPM_REGISTRY=https://registry.npmmirror.com
|
||||
container_name: clawpanel
|
||||
hostname: clawpanel
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 网络配置 - 关键:使用 host 网络模式解决容器内外互通问题
|
||||
# -------------------------------------------------------------------------
|
||||
# host 模式:容器共享宿主机网络命名空间
|
||||
# 优点:
|
||||
# 1. 容器可以直接访问宿主机上的服务(如 Gateway)
|
||||
# 2. 避免端口映射的复杂性
|
||||
# 3. 性能更好(无额外网络层)
|
||||
# 注意:使用 host 模式后,ports 配置无效
|
||||
# -------------------------------------------------------------------------
|
||||
network_mode: host
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 端口映射(仅在 network_mode 为 default 时生效)
|
||||
# 如果你想用 bridge 模式而不是 host 模式,注释上面一行,取消下面注释
|
||||
# -------------------------------------------------------------------------
|
||||
# ports:
|
||||
# - "1420:1420" # ClawPanel Web 界面
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 卷挂载 - 数据持久化
|
||||
# -------------------------------------------------------------------------
|
||||
volumes:
|
||||
# OpenClaw 配置目录 - 关键!
|
||||
# 包含 openclaw.json, mcp.json, agents/, devices/ 等
|
||||
- ~/.openclaw:/root/.openclaw
|
||||
# ClawPanel 数据目录(可选,用于存储临时文件)
|
||||
- ./data:/app/data
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 环境变量
|
||||
# -------------------------------------------------------------------------
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
# OpenClaw Gateway 地址(如果 Gateway 不在本地,修改为实际地址)
|
||||
# 注意:host 模式下直接使用 localhost 或 127.0.0.1
|
||||
- OPENCLAW_URL=http://127.0.0.1:18789
|
||||
# 如果需要代理(取消注释并修改为实际代理地址)
|
||||
# - HTTP_PROXY=http://host.docker.internal:7890
|
||||
# - HTTPS_PROXY=http://host.docker.internal:7890
|
||||
# 时区设置
|
||||
- TZ=Asia/Shanghai
|
||||
# 确保 HOME 环境变量正确
|
||||
- HOME=/root
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 重启策略
|
||||
# -------------------------------------------------------------------------
|
||||
restart: unless-stopped
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 健康检查
|
||||
# -------------------------------------------------------------------------
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:1420/"]
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
start_period: 15s
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 安全配置
|
||||
# -------------------------------------------------------------------------
|
||||
# 使用读安全选项减少攻击面
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 资源限制(可选,取消注释以限制资源使用)
|
||||
# -------------------------------------------------------------------------
|
||||
# deploy:
|
||||
# resources:
|
||||
# limits:
|
||||
# cpus: '1.0'
|
||||
# memory: 1G
|
||||
# reservations:
|
||||
# cpus: '0.5'
|
||||
# memory: 512M
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 日志配置
|
||||
# -------------------------------------------------------------------------
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "10m"
|
||||
max-file: "3"
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# 依赖(可选,如果 Gateway 在另一个容器中)
|
||||
# -------------------------------------------------------------------------
|
||||
# depends_on:
|
||||
# gateway:
|
||||
# condition: service_healthy
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# OpenClaw Gateway 服务(可选,取消注释以启用)
|
||||
# ---------------------------------------------------------------------------
|
||||
# gateway:
|
||||
# image: node:22-alpine
|
||||
# container_name: openclaw-gateway
|
||||
# hostname: openclaw-gateway
|
||||
# network_mode: host
|
||||
# volumes:
|
||||
# - ~/.openclaw:/root/.openclaw
|
||||
# environment:
|
||||
# - TZ=Asia/Shanghai
|
||||
# restart: unless-stopped
|
||||
# command: >
|
||||
# sh -c "npm install -g @qingchencloud/openclaw-zh --registry https://registry.npmmirror.com &&
|
||||
# openclaw init 2>/dev/null || true &&
|
||||
# openclaw gateway start --foreground"
|
||||
# healthcheck:
|
||||
# test: ["CMD", "curl", "-f", "http://localhost:18789/health"]
|
||||
# interval: 30s
|
||||
# timeout: 5s
|
||||
# retries: 3
|
||||
# logging:
|
||||
# driver: "json-file"
|
||||
# options:
|
||||
# max-size: "10m"
|
||||
# max-file: "3"
|
||||
|
||||
# =============================================================================
|
||||
# 网络配置(使用 host 模式时不需要)
|
||||
# =============================================================================
|
||||
# networks:
|
||||
# default:
|
||||
# name: clawpanel-network
|
||||
# driver: bridge
|
||||
|
||||
# =============================================================================
|
||||
# 卷配置
|
||||
# =============================================================================
|
||||
# volumes:
|
||||
# openclaw-config:
|
||||
# name: clawpanel-openclaw-config
|
||||
Reference in New Issue
Block a user