superX432 commited on
Commit
20ed3a2
·
verified ·
1 Parent(s): c9df98c

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -15
Dockerfile CHANGED
@@ -75,6 +75,7 @@ if __name__ == "__main__":\n\
75
 
76
  # 7. 容器入口脚本 (start-openclaw)
77
  # 负责恢复数据 -> 生成配置 -> 启动网关 -> 定时备份
 
78
  RUN echo "#!/bin/bash\n\
79
  set -e\n\
80
  mkdir -p /root/.openclaw/sessions\n\
@@ -83,38 +84,37 @@ mkdir -p /root/.openclaw/workspace\n\
83
  # 启动前执行数据恢复\n\
84
  python3 /usr/local/bin/sync.py restore\n\
85
  \n\
86
- # 清理 API Base 地址\n\
87
- CLEAN_BASE=\$(echo \"\$OPENAI_API_BASE\" | sed \"s|/chat/completions||g\" | sed \"s|/v1/|/v1|g\" | sed \"s|/v1\$|/v1|g\")\n\
88
- \n\
89
  # 生成 openclaw.json 配置文件\n\
90
  cat > /root/.openclaw/openclaw.json <<EOF\n\
91
  {\n\
92
  \"models\": {\n\
93
  \"providers\": {\n\
94
- \"siliconflow\": {\n\
95
- \"baseUrl\": \"\$CLEAN_BASE\",\n\
96
- \"apiKey\": \"\$OPENAI_API_KEY\",\n\
97
- \"api\": \"openai-completions\",\n\
98
- \"models\": [{ \"id\": \"\$MODEL\", \"name\": \"DeepSeek\", \"contextWindow\": 128000 }]\n\
 
99
  }\n\
100
  }\n\
101
  },\n\
102
- \"agents\": { \"defaults\": { \"model\": { \"primary\": \"siliconflow/\$MODEL\" } } },\n\
103
  \"gateway\": {\n\
104
- \"mode\": \"local\", \"bind\": \"lan\", \"port\": \$PORT,\n\
105
- \"trustedProxies\": [\"0.0.0.0/0\", \"10.0.0.0/8\", \"172.16.0.0/12\", \"192.168.0.0/16\"],\n\
 
 
106
  \"auth\": { \"mode\": \"token\", \"token\": \"\$OPENCLAW_GATEWAY_PASSWORD\" },\n\
107
  \"controlUi\": { \"allowInsecureAuth\": true }\n\
108
  }\n\
109
  }\n\
110
  EOF\n\
111
  \n\
112
- # 启动定时备份进程 (每 3 小时执行一次,增强安全性)\n\
113
  (while true; do sleep 10800; python3 /usr/local/bin/sync.py backup; done) &\n\
114
  \n\
115
- # 启动 OpenClaw 网关\n\
116
- openclaw doctor --fix\n\
117
- exec openclaw gateway run --port \$PORT\n\
118
  " > /usr/local/bin/start-openclaw && chmod +x /usr/local/bin/start-openclaw
119
 
120
  EXPOSE 7860
 
75
 
76
  # 7. 容器入口脚本 (start-openclaw)
77
  # 负责恢复数据 -> 生成配置 -> 启动网关 -> 定时备份
78
+ # 7. 容器入口脚本 (Updated for Gemini & Security Fix)
79
  RUN echo "#!/bin/bash\n\
80
  set -e\n\
81
  mkdir -p /root/.openclaw/sessions\n\
 
84
  # 启动前执行数据恢复\n\
85
  python3 /usr/local/bin/sync.py restore\n\
86
  \n\
 
 
 
87
  # 生成 openclaw.json 配置文件\n\
88
  cat > /root/.openclaw/openclaw.json <<EOF\n\
89
  {\n\
90
  \"models\": {\n\
91
  \"providers\": {\n\
92
+ \"google\": {\n\
93
+ \"apiKey\": \"\$GEMINI_API_KEY\",\n\
94
+ \"api\": \"google-generative-ai\",\n\
95
+ \"models\": [\n\
96
+ { \"id\": \"\$MODEL\", \"name\": \"Gemini Pro\", \"contextWindow\": 1000000 }\n\
97
+ ]\n\
98
  }\n\
99
  }\n\
100
  },\n\
101
+ \"agents\": { \"defaults\": { \"model\": { \"primary\": \"google/\$MODEL\" } } },\n\
102
  \"gateway\": {\n\
103
+ \"mode\": \"local\", \n\
104
+ \"bind\": \"loopback\", \n\
105
+ \"port\": \$PORT,\n\
106
+ \"trustedProxies\": [\"0.0.0.0/0\"],\n\
107
  \"auth\": { \"mode\": \"token\", \"token\": \"\$OPENCLAW_GATEWAY_PASSWORD\" },\n\
108
  \"controlUi\": { \"allowInsecureAuth\": true }\n\
109
  }\n\
110
  }\n\
111
  EOF\n\
112
  \n\
113
+ # 启动定时备份进程\n\
114
  (while true; do sleep 10800; python3 /usr/local/bin/sync.py backup; done) &\n\
115
  \n\
116
+ # 启动 OpenClaw 网关 (Force Loopback to skip security error)\n\
117
+ exec openclaw gateway run --port \$PORT --bind 127.0.0.1\n\
 
118
  " > /usr/local/bin/start-openclaw && chmod +x /usr/local/bin/start-openclaw
119
 
120
  EXPOSE 7860