diff --git a/GoEdge-cdn b/GoEdge-cdn index a0d0ca2..f4de5f5 100644 --- a/GoEdge-cdn +++ b/GoEdge-cdn @@ -1,39 +1,71 @@ -# 1. 检测是否安装了 unzip,如果没有则安装 -if ! command -v unzip &> /dev/null; then - echo "未检测到 unzip,正在安装..." - apt update && apt install -y unzip -else - echo "检测到 unzip 已安装。" -fi +#!/bin/bash -# 2. 创建安装目录 (使用 GoEdge 默认目录) +# 定义变量 INSTALL_DIR="/usr/local/goedge" -mkdir -p "$INSTALL_DIR" - -# 3. 从你提供的链接下载安装包 -# 注意:将其重命名为 edge-admin.zip 以便识别 +# 你的 Gitea 下载链接 DOWNLOAD_URL="https://git.vps3344521.xyz/3344/dock/releases/download/Goedge-cdn/edge-admin-linux-amd64-plus-v1.4.7.zip" SAVE_PATH="/tmp/edge-admin.zip" -echo "正在从指定链接下载..." -wget -O "$SAVE_PATH" "$DOWNLOAD_URL" +echo "=== 开始检查依赖环境 ===" -# 4. 解压文件到安装目录 -echo "正在解压..." +# 1. 检测并安装 unzip (解压用) +if ! command -v unzip &> /dev/null; then + echo "未检测到 unzip,正在安装..." + apt-get update && apt-get install -y unzip +fi + +# 2. 检测并安装 axel (多线程下载用) +if ! command -v axel &> /dev/null; then + echo "未检测到 axel,正在安装..." + apt-get update && apt-get install -y axel +else + echo "检测到 axel 已安装。" +fi + +# 3. 准备目录 +if [ ! -d "$INSTALL_DIR" ]; then + mkdir -p "$INSTALL_DIR" + echo "创建目录: $INSTALL_DIR" +fi + +# 4. 使用 axel 多线程下载 +echo "=== 开始多线程下载 (10线程) ===" +# 先清理旧文件,防止 axel 断点续传出错 +rm -f "$SAVE_PATH" + +# -n 10: 指定10个线程 +# -a: 显示简化的进度条 +# -o: 指定输出文件名 +axel -n 10 -a -o "$SAVE_PATH" "$DOWNLOAD_URL" + +if [ $? -ne 0 ]; then + echo "下载失败,请检查网络或链接有效性。" + exit 1 +fi + +# 5. 解压文件 +echo "=== 正在解压文件 ===" +# -o: 覆盖不提示 +# -d: 指定解压目录 unzip -o "$SAVE_PATH" -d "$INSTALL_DIR" -# 5. 执行安装和启动 -# GoEdge 解压后通常会在目录里有一个 edge-admin 文件夹 +# 6. 执行安装和启动 if [ -d "$INSTALL_DIR/edge-admin" ]; then cd "$INSTALL_DIR/edge-admin" - echo "正在安装系统服务..." + echo "=== 正在配置系统服务 ===" ./edge-admin install - echo "正在启动服务..." + echo "=== 正在启动 GoEdge Admin ===" ./edge-admin start - echo "安装完成!" + # 检查进程是否运行 + if pgrep -f "edge-admin" > /dev/null; then + echo ">>> 安装并启动成功!" + echo ">>> 请访问 http://你的IP:7788 进行配置" + else + echo "启动命令已执行,但进程未检测到,请手动检查 logs 目录。" + fi else - echo "解压后未找到 edge-admin 目录,请检查压缩包内容。" + echo "错误:解压后未找到 edge-admin 目录,请检查下载文件是否正确。" fi \ No newline at end of file