更新 cl穿透
This commit is contained in:
41
cl穿透
41
cl穿透
@@ -1,27 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================
|
||||
# 在下方引号内填入你的 Cloudflare Tunnel Token
|
||||
# ==========================================
|
||||
TUNNEL_TOKEN="这里填入你的Token"
|
||||
# 颜色定义
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m'
|
||||
|
||||
# 检查 Token 是否已填写
|
||||
if [ "$TUNNEL_TOKEN" = "这里填入你的Token" ] || [ -z "$TUNNEL_TOKEN" ]; then
|
||||
echo -e "\033[31m[错误] 请先在脚本中填入你的 Tunnel Token!\033[0m"
|
||||
echo -e "${GREEN}==== Cloudflare Tunnel Docker 交互安装脚本 ====${NC}"
|
||||
|
||||
# 1. 交互式获取 Token
|
||||
read -p "请输入你的 Cloudflare Tunnel Token: " USER_TOKEN
|
||||
|
||||
# 检查输入是否为空
|
||||
if [ -z "$USER_TOKEN" ]; then
|
||||
echo -e "${RED}[错误] Token 不能为空!请重新运行脚本并输入有效密钥。${NC}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo -e "\033[32m[启动] 正在启动 Cloudflare Tunnel 容器...\033[0m"
|
||||
# 2. 检查并清理同名容器
|
||||
if [ "$(docker ps -aq -f name=cf-tunnel)" ]; then
|
||||
echo -e "${YELLOW}[提示] 发现已存在的 cf-tunnel 容器,正在更新...${NC}"
|
||||
docker rm -f cf-tunnel >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
# 3. 运行 Docker 容器
|
||||
echo -e "${GREEN}[执行] 正在启动 Cloudflare Tunnel...${NC}"
|
||||
|
||||
# 运行 Docker 容器
|
||||
docker run -d \
|
||||
--name cf-tunnel \
|
||||
--restart always \
|
||||
cloudflare/cloudflared:latest \
|
||||
tunnel --no-autoupdate run --token "$TUNNEL_TOKEN"
|
||||
tunnel --no-autoupdate run --token "$USER_TOKEN"
|
||||
|
||||
# 4. 验证结果
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "\033[32m[成功] Tunnel 容器已在后台运行。\033[0m"
|
||||
echo -e "------------------------------------------------"
|
||||
echo -e "${GREEN}成功:Cloudflare Tunnel 已在后台启动!${NC}"
|
||||
echo -e "容器名称: cf-tunnel"
|
||||
echo -e "查看日志命令: docker logs -f cf-tunnel"
|
||||
echo -e "------------------------------------------------"
|
||||
else
|
||||
echo -e "\033[31m[失败] 容器启动失败,请检查 Docker 安装情况。\033[0m"
|
||||
echo -e "${RED}[错误] 容器启动失败,请检查 Docker 是否正常运行。${NC}"
|
||||
fi
|
||||
Reference in New Issue
Block a user