BuildBrowser / start.sh
StarrySkyWorld's picture
Update start.sh
167282c verified
#!/bin/bash
echo "[INFO] Starting WARP + App..."
# 下载 cookies
wget -q \
--user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" \
--header="CF-Access-Client-Id: ${CF_ACCESS_CLIENT_ID}" \
--header="CF-Access-Client-Secret: ${CF_ACCESS_CLIENT_SECRET}" \
-O cookies.json \
https://source.starrysky.ggff.net/sources/cookies.json || echo "[]" > cookies.json
echo "[INFO] Cookies downloaded"
# 检查是否已有 WARP 配置
if [ ! -f /app/warp/wireproxy.conf ]; then
echo "[INFO] Registering WARP..."
mkdir -p /app/warp
cd /app/warp
# 注册 WARP
wgcf register --accept-tos
# 生成 WireGuard 配置
wgcf generate
# 转换为 wireproxy 配置
cat > wireproxy.conf << 'CONF'
[Interface]
PrivateKey = PRIVATE_KEY_PLACEHOLDER
DNS = 1.1.1.1
MTU = 1280
[Peer]
PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=
Endpoint = engage.cloudflareclient.com:2408
AllowedIPs = 0.0.0.0/0, ::/0
[Socks5]
BindAddress = 127.0.0.1:1080
[http]
BindAddress = 127.0.0.1:8080
CONF
# 从生成的配置中提取私钥并替换
PRIVATE_KEY=$(grep "PrivateKey" wgcf-profile.conf | cut -d' ' -f3)
sed -i "s|PRIVATE_KEY_PLACEHOLDER|${PRIVATE_KEY}|g" wireproxy.conf
cd /app
fi
echo "[INFO] WARP config ready"
# 显示当前 IP
echo "[INFO] Current IP (before WARP):"
curl -s https://api.vore.top/api/IPdata?ip= || echo "Failed to get IP"
# 启动 supervisor(管理 wireproxy 和 python 应用)
exec /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf