chatyou commited on
Commit
e429936
·
verified ·
1 Parent(s): 1b20dcc

Create start-openclaw.sh

Browse files
Files changed (1) hide show
  1. start-openclaw.sh +73 -0
start-openclaw.sh ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ # 1. 创建 OpenClaw 所需的目录结构
5
+ echo "创建 OpenClaw 目录..."
6
+ mkdir -p /root/.openclaw/agents/main/sessions
7
+ mkdir -p /root/.openclaw/credentials
8
+ mkdir -p /root/.openclaw/sessions
9
+
10
+ # 2. 从 Hugging Face Dataset 恢复数据(如果存在)
11
+ echo "尝试从 HF Dataset 恢复数据..."
12
+ python3 /app/sync.py restore
13
+
14
+ # 3. 处理 API 基础地址(确保格式正确)
15
+ CLEAN_BASE=$(echo "$OPENAI_API_BASE" | sed "s|/chat/completions||g" | sed "s|/v1/|/v1|g" | sed "s|/v1$|/v1|g")
16
+
17
+ # 4. 根据环境变量动态生成 openclaw.json 配置文件
18
+ echo "生成 OpenClaw 配置文件..."
19
+ cat > /root/.openclaw/openclaw.json <<EOF
20
+ {
21
+ "models": {
22
+ "providers": {
23
+ "nvidia": {
24
+ "baseUrl": "$CLEAN_BASE",
25
+ "apiKey": "$OPENAI_API_KEY",
26
+ "api": "openai-completions",
27
+ "models": [{ "id": "$MODEL", "name": "$MODEL", "contextWindow": 128000 }]
28
+ }
29
+ }
30
+ },
31
+ "agents": {
32
+ "defaults": {
33
+ "model": {
34
+ "primary": "nvidia/$MODEL"
35
+ }
36
+ }
37
+ },
38
+ "commands": {
39
+ "restart": true
40
+ },
41
+ "gateway": {
42
+ "mode": "local",
43
+ "bind": "lan",
44
+ "port": $PORT,
45
+ "trustedProxies": ["0.0.0.0/0"],
46
+ "auth": {
47
+ "mode": "token",
48
+ "token": "$OPENCLAW_GATEWAY_PASSWORD"
49
+ },
50
+ "controlUi": {
51
+ "enabled": true,
52
+ "allowInsecureAuth": true,
53
+ "dangerouslyDisableDeviceAuth": true,
54
+ "dangerouslyAllowHostHeaderOriginFallback": true
55
+ }
56
+ }
57
+ }
58
+ EOF
59
+
60
+ echo "配置文件生成完成。"
61
+
62
+ # 5. 在后台启动定时备份任务(每小时备份一次)
63
+ (
64
+ while true; do
65
+ sleep 3600
66
+ echo "执行定时数据备份..."
67
+ python3 /app/sync.py backup
68
+ done
69
+ ) &
70
+
71
+ # 6. 运行 OpenClaw (首次运行会自动修复依赖并启动网关)
72
+ echo "启动 OpenClaw Gateway..."
73
+ exec openclaw gateway run --port $PORT