更新部分内容,重测中

This commit is contained in:
2026-07-29 22:55:02 +08:00
parent 42058e724d
commit 761047009e
4 changed files with 31 additions and 29 deletions
+29 -11
View File
@@ -36,7 +36,7 @@ fi
# ---------- 配置 ----------
REPO_URL="https://git.whitetop.xyz/lxh2875931338/frpc-console.git"
BRANCH="main"
BRANCH="main" # 默认 mainselect_channel 会根据选择修改
WORK_DIR="/tmp/frpc-console-build"
DEFAULT_PORT=9300
DEFAULT_DEPLOY_DIR="/opt/frpc-console"
@@ -99,8 +99,8 @@ parse_args() {
echo "用法: ./deploy.sh [选项]"
echo ""
echo "选项:"
echo " --channel lts 使用 LTS 通道"
echo " --channel preview 使用 Preview 通道"
echo " --channel lts 使用 LTS 通道 (main 分支)"
echo " --channel preview 使用 Preview 通道 (test 分支)"
echo " --yes, -y 跳过所有确认提示"
echo " --check 只检测环境,不执行部署"
echo " --dry-run 显示将执行的操作,不实际执行"
@@ -109,6 +109,7 @@ parse_args() {
echo "示例:"
echo " ./deploy.sh # 交互式选择通道"
echo " ./deploy.sh --channel lts # 部署 LTS 版本"
echo " ./deploy.sh --channel preview # 部署 Preview 版本"
echo " ./deploy.sh --yes # 无人值守部署"
exit 0
;;
@@ -283,28 +284,43 @@ compare_version() {
fi
}
# ---------- 通道选择 ----------
# ---------- 通道选择(含分支切换)----------
select_channel() {
if [ -n "$CHANNEL" ]; then
if [ "$CHANNEL" != "lts" ] && [ "$CHANNEL" != "preview" ]; then
print_error "无效通道: $CHANNEL (仅支持 lts / preview)"
exit 1
fi
if [ "$CHANNEL" = "preview" ]; then
BRANCH="test"
else
BRANCH="main"
fi
return
fi
echo ""
echo -e "${CYAN}请选择部署通道:${NC}"
echo " 1. LTS (稳定版,生产推荐) [默认]"
echo " 2. Preview (技术预览版,包含新特性)"
echo " 1. LTS (稳定版,生产推荐) [默认] → main 分支"
echo " 2. Preview (技术预览版,包含新特性) → test 分支"
echo ""
read -p "请选择 [1]: " CHANNEL_INPUT </dev/tty
CHANNEL_INPUT=${CHANNEL_INPUT:-1}
case $CHANNEL_INPUT in
1|"") CHANNEL="lts" ;;
2) CHANNEL="preview" ;;
*) print_error "无效选择"; exit 1 ;;
1|"")
CHANNEL="lts"
BRANCH="main"
;;
2)
CHANNEL="preview"
BRANCH="test"
;;
*)
print_error "无效选择"
exit 1
;;
esac
print_info "已选择: ${CHANNEL} 通道 (${BRANCH} 分支)"
}
# ---------- 检测结果汇总 ----------
@@ -399,6 +415,7 @@ print_deployment_plan() {
echo -e " 部署目录 : ${DEPLOY_DIR}"
echo -e " 目标版本 : ${TARGET_VERSION}"
echo -e " 镜像标签 : ${IMAGE_TAG}"
echo -e " 源码分支 : ${BRANCH}"
echo -e " ────────────────────────────────────"
if [ "$CONTAINER_EXISTS" = true ]; then
@@ -535,7 +552,7 @@ do_deploy() {
git clone --depth 1 --branch "$BRANCH" "$REPO_URL" "$WORK_DIR"
cd "$WORK_DIR"
mkdir -p bin static
print_success "代码拉取完成"
print_success "代码拉取完成 (分支: ${BRANCH})"
# ----- 停止旧容器(拉取代码之后)-----
if [ "$CONTAINER_EXISTS" = true ]; then
@@ -552,7 +569,7 @@ do_deploy() {
mkdir -p "$DEPLOY_DIR"
mkdir -p "$DATA_DIR"
# ----- 构建 Docker 镜像Dockerfile 内部完成编译)-----
# ----- 构建 Docker 镜像 -----
print_step "构建 Docker 镜像..."
docker build -t "${IMAGE_NAME}:${IMAGE_TAG}" \
--build-arg VERSION="${TARGET_VERSION}" \
@@ -644,6 +661,7 @@ do_deploy() {
echo -e " ${CYAN}📦 备份目录:${NC} /tmp/frpc-console/db-backups"
echo -e " ${CYAN}🐳 容器名称:${NC} frpc-console"
echo -e " ${CYAN}🏷️ 版本:${NC} ${TARGET_VERSION}"
echo -e " ${CYAN}🌿 分支:${NC} ${BRANCH}"
echo ""
echo -e " ${CYAN}常用命令:${NC}"
echo " docker logs frpc-console # 查看日志"