Update Dockerfile
Browse files- Dockerfile +3 -50
Dockerfile
CHANGED
|
@@ -85,7 +85,7 @@ SYNC_EOF
|
|
| 85 |
|
| 86 |
RUN chmod +x /usr/local/bin/sync.py
|
| 87 |
|
| 88 |
-
# ========= 3. 启动脚本 start-openclaw =========
|
| 89 |
RUN cat > /usr/local/bin/start-openclaw << 'EOF'
|
| 90 |
#!/bin/bash
|
| 91 |
set -e
|
|
@@ -125,23 +125,7 @@ else
|
|
| 125 |
API_TYPE="openai-completions"
|
| 126 |
fi
|
| 127 |
|
| 128 |
-
#
|
| 129 |
-
GROUPS_CONFIG=""
|
| 130 |
-
if [ -n "$TELEGRAM_GROUP_IDS" ]; then
|
| 131 |
-
GROUPS_CONFIG=', "groups": {'
|
| 132 |
-
IFS=',' read -ra GROUP_ARRAY <<< "$TELEGRAM_GROUP_IDS"
|
| 133 |
-
for i in "${!GROUP_ARRAY[@]}"; do
|
| 134 |
-
GROUP_ID="${GROUP_ARRAY[$i]}"
|
| 135 |
-
GROUP_ID=$(echo "$GROUP_ID" | xargs)
|
| 136 |
-
GROUPS_CONFIG="$GROUPS_CONFIG\"$GROUP_ID\": {\"requireMention\": true}"
|
| 137 |
-
if [ $i -lt $((${#GROUP_ARRAY[@]}-1)) ]; then
|
| 138 |
-
GROUPS_CONFIG="$GROUPS_CONFIG, "
|
| 139 |
-
fi
|
| 140 |
-
done
|
| 141 |
-
GROUPS_CONFIG="$GROUPS_CONFIG }"
|
| 142 |
-
fi
|
| 143 |
-
|
| 144 |
-
# 写入 openclaw.json(包含 browser 配置)
|
| 145 |
cat > /root/.openclaw/openclaw.json <<EOF2
|
| 146 |
{
|
| 147 |
"models": {
|
|
@@ -182,16 +166,6 @@ cat > /root/.openclaw/openclaw.json <<EOF2
|
|
| 182 |
"enabled": true,
|
| 183 |
"dataDir": "/root/.openclaw/wechat-data",
|
| 184 |
"autoLogin": true
|
| 185 |
-
},
|
| 186 |
-
"telegram": {
|
| 187 |
-
"enabled": true,
|
| 188 |
-
"botToken": "$TELEGRAM_BOT_TOKEN",
|
| 189 |
-
"retry": {
|
| 190 |
-
"attempts": 10,
|
| 191 |
-
"minDelayMs": 500,
|
| 192 |
-
"maxDelayMs": 30000,
|
| 193 |
-
"jitter": 0.1
|
| 194 |
-
}$GROUPS_CONFIG
|
| 195 |
}
|
| 196 |
},
|
| 197 |
"browser": {
|
|
@@ -214,28 +188,7 @@ openclaw doctor --fix
|
|
| 214 |
openclaw gateway run --port $PORT &
|
| 215 |
GATEWAY_PID=$!
|
| 216 |
|
| 217 |
-
|
| 218 |
-
|
| 219 |
-
echo "Starting Telegram auto-pairing..."
|
| 220 |
-
for i in {1..10}; do
|
| 221 |
-
PAIR_OUTPUT=$(openclaw pairing list 2>/dev/null || true)
|
| 222 |
-
CODE=$(echo "$PAIR_OUTPUT" | grep -oP 'Pairing code: \K[A-Z0-9]{7,}' | head -1)
|
| 223 |
-
if [ -z "$CODE" ]; then
|
| 224 |
-
CODE=$(echo "$PAIR_OUTPUT" | awk '/^│ Code/ {getline; split($0, a, "│"); gsub(/^ +| +$/, "", a[2]); if (a[2] ~ /^[A-Z0-9]{7,}$/) print a[2]}' | head -1)
|
| 225 |
-
fi
|
| 226 |
-
if [ -z "$CODE" ]; then
|
| 227 |
-
CODE=$(echo "$PAIR_OUTPUT" | grep -oE '[A-Z0-9]{7,}' | grep -v "PAIRING" | grep -v "REQUEST" | head -1)
|
| 228 |
-
fi
|
| 229 |
-
if [ -n "$CODE" ]; then
|
| 230 |
-
echo "Found pairing code: $CODE"
|
| 231 |
-
openclaw pairing approve telegram "$CODE"
|
| 232 |
-
echo "Approval sent. Bot should now respond."
|
| 233 |
-
break
|
| 234 |
-
else
|
| 235 |
-
echo "No pending pairing code found (attempt $i/10). Waiting 5 seconds..."
|
| 236 |
-
sleep 5
|
| 237 |
-
fi
|
| 238 |
-
done
|
| 239 |
|
| 240 |
trap 'echo "Container stopping, running final backup..."; python3 /usr/local/bin/sync.py backup; kill $GATEWAY_PID 2>/dev/null' EXIT
|
| 241 |
|
|
|
|
| 85 |
|
| 86 |
RUN chmod +x /usr/local/bin/sync.py
|
| 87 |
|
| 88 |
+
# ========= 3. 启动脚本 start-openclaw(已移除 Telegram) =========
|
| 89 |
RUN cat > /usr/local/bin/start-openclaw << 'EOF'
|
| 90 |
#!/bin/bash
|
| 91 |
set -e
|
|
|
|
| 125 |
API_TYPE="openai-completions"
|
| 126 |
fi
|
| 127 |
|
| 128 |
+
# 写入 openclaw.json(不包含 telegram 通道)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 129 |
cat > /root/.openclaw/openclaw.json <<EOF2
|
| 130 |
{
|
| 131 |
"models": {
|
|
|
|
| 166 |
"enabled": true,
|
| 167 |
"dataDir": "/root/.openclaw/wechat-data",
|
| 168 |
"autoLogin": true
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 169 |
}
|
| 170 |
},
|
| 171 |
"browser": {
|
|
|
|
| 188 |
openclaw gateway run --port $PORT &
|
| 189 |
GATEWAY_PID=$!
|
| 190 |
|
| 191 |
+
# 已移除 Telegram auto-pairing 循环
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 192 |
|
| 193 |
trap 'echo "Container stopping, running final backup..."; python3 /usr/local/bin/sync.py backup; kill $GATEWAY_PID 2>/dev/null' EXIT
|
| 194 |
|