Zxen commited on
Commit
2e9cf2f
·
verified ·
1 Parent(s): b556596

Update run.sh

Browse files
Files changed (1) hide show
  1. run.sh +38 -19
run.sh CHANGED
@@ -1,41 +1,60 @@
1
  #!/bin/bash
2
 
3
- # 确保使用当前用户的 HOME 目录 (在官方镜像中通常是 /root)
4
  CONFIG_DIR="$HOME/.openclaw"
5
  CONFIG_FILE="$CONFIG_DIR/openclaw.json"
6
 
7
- # 确保目录存在
8
  mkdir -p "$CONFIG_DIR"
9
 
10
  echo "=== OpenClaw 汉化版启动脚本 ==="
11
- echo "配置目录: $CONFIG_DIR"
12
-
13
- # --- 1. 下载配置文件 ---
14
- echo "正在从 WebDAV 获取配置文件..."
15
 
 
16
  if [ -z "$WEBDAV_URL" ]; then
17
  echo "错误: 未设置 WEBDAV_URL 环境变量"
18
- echo "请在 Hugging Face Space 设置中添加 WEBDAV_URL"
19
  exit 1
20
  fi
21
 
22
- # 下载逻辑
23
- if [ -n "$WEBDAV_USER" ] && [ -n "$WEBDAV_PASSWORD" ]; then
24
- curl -s -L --fail -u "$WEBDAV_USER:$WEBDAV_PASSWORD" "$WEBDAV_URL" -o "$CONFIG_FILE"
25
  else
26
- curl -s -L --fail "$WEBDAV_URL" -o "$CONFIG_FILE"
 
27
  fi
28
 
29
- if [ -f "$CONFIG_FILE" ]; then
30
- echo "✅ 配置文件下载成功"
 
31
  else
32
- echo "❌ 错误: 无法下载配置文件,请检查 URL 或密码"
 
 
 
 
33
  exit 1
34
  fi
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35
 
36
- # --- 2. 启动 OpenClaw ---
37
- echo "正在启动 OpenClaw..."
38
 
39
- # 官方镜像通常已经将 openclaw 添加到 PATH 中
40
- # 我们强制指定下载好的配置文件路径
41
- exec openclaw --config "$CONFIG_FILE"
 
1
  #!/bin/bash
2
 
3
+ # OpenClaw 默认路径
4
  CONFIG_DIR="$HOME/.openclaw"
5
  CONFIG_FILE="$CONFIG_DIR/openclaw.json"
6
 
 
7
  mkdir -p "$CONFIG_DIR"
8
 
9
  echo "=== OpenClaw 汉化版启动脚本 ==="
 
 
 
 
10
 
11
+ # 1. 检查环境变量并处理下载 (保持之前的逻辑)
12
  if [ -z "$WEBDAV_URL" ]; then
13
  echo "错误: 未设置 WEBDAV_URL 环境变量"
 
14
  exit 1
15
  fi
16
 
17
+ if [[ "$WEBDAV_URL" == *.json ]]; then
18
+ FINAL_URL="$WEBDAV_URL"
 
19
  else
20
+ CLEAN_URL="${WEBDAV_URL%/}"
21
+ FINAL_URL="$CLEAN_URL/openclaw.json"
22
  fi
23
 
24
+ echo "正在从 WebDAV 下载配置: $FINAL_URL"
25
+ if [ -n "$WEBDAV_USER" ] && [ -n "$WEBDAV_PASSWORD" ]; then
26
+ curl -s -L --fail -u "$WEBDAV_USER:$WEBDAV_PASSWORD" "$FINAL_URL" -o "$CONFIG_FILE"
27
  else
28
+ curl -s -L --fail "$FINAL_URL" -o "$CONFIG_FILE"
29
+ fi
30
+
31
+ if [ ! -f "$CONFIG_FILE" ]; then
32
+ echo "❌ 错误: 无法下载配置文件"
33
  exit 1
34
  fi
35
+ echo "✅ 配置文件下载成功"
36
+
37
+ # 2. 运行系统诊断 (可选,能帮你检查环境是否正常)
38
+ echo "--- 系统诊断 (openclaw doctor) ---"
39
+ openclaw doctor
40
+
41
+ # 3. 启动 OpenClaw
42
+ echo "--- 正在启动 OpenClaw ---"
43
+
44
+ # 在后台启动 OpenClaw 主程序
45
+ # 我们直接运行 openclaw,它会自动加载默认路径的配置
46
+ openclaw &
47
+
48
+ # 获取刚才启动进程的 PID
49
+ MAIN_PID=$!
50
+
51
+ # 4. 等待并显示状态
52
+ echo "等待网关启动 (15秒)..."
53
+ sleep 15
54
 
55
+ echo "--- OpenClaw 运行状态 ---"
56
+ openclaw gateway status
57
 
58
+ echo "--- 实时日志输出 ---"
59
+ # 使用 wait 保持容器运行,并持续捕获后台进程的输出
60
+ wait $MAIN_PID