diff --git a/install.sh b/install.sh index e5bf6ad..a39a99a 100644 --- a/install.sh +++ b/install.sh @@ -20,6 +20,21 @@ check_config(){ echo "请先'创建配置'" exit 0 fi +} + + +# 检查依赖 +check_dependencies() { + # 内部退出函数:只在本函数作用域内有效 + exit_with_dep_error() { + echo "请执行 安装依赖 操作" + exit 1 + } + + source ./bin/utils/bash.sh + check_jq || exit_with_dep_error + check_docker || exit_with_dep_error + check_docker_compose || exit_with_dep_error } @@ -43,6 +58,7 @@ change_reality_dest(){ main(){ # 显示菜单 echo "请选择一个操作:" + echo "0. 安装依赖" echo "1. 创建配置 / 重置配置" echo "2. 启动容器" echo "3. 查看分享链接" @@ -57,18 +73,28 @@ main(){ # 根据用户选择执行相应的操作 case $choice in + 0) + # 安装依赖 + source ./bin/utils/bash.sh + install_jq + install_docker + install_docker_compose + ;; 1) # 创建配置 / 重置配置 + check_dependencies bash ./bin/create_config.sh ;; 2) # 启动容器 echo "启动容器.." + check_dependencies bash ./bin/run.sh ;; 3) # 查看分享链接 echo "查看分享链接.." + check_dependencies check_config bash ./bin/print_share_link.sh ;; @@ -83,12 +109,14 @@ main(){ ;; 6) # 修改端口 + check_dependencies check_config bash ./bin/update_port.sh restart_docker ;; 7) # 修改Reality目标域名 + check_dependencies check_config change_reality_dest restart_docker