diff --git a/deploy/install.sh b/deploy/install.sh index 41115ce..7ce76f5 100755 --- a/deploy/install.sh +++ b/deploy/install.sh @@ -91,8 +91,24 @@ http_ok() { [ "$(id -u)" -eq 0 ] || die "需要 root 权限(安装 systemd 服务与 nginx 站点)。 请以 root 身份执行,例如: su -c 'bash deploy/install.sh' 或 sudo bash deploy/install.sh" -[ -f deploy/.env ] || die "缺少 deploy/.env,请先: - cp deploy/.env.example deploy/.env && vi deploy/.env" +# 缺少 deploy/.env 时,若安装目录里已有上次安装留下的配置,直接复用。 +# 否则用户每次重新解压发布包都得重填一遍数据库口令(本次就是这么被绊住的)。 +if [ ! -f deploy/.env ]; then + if [ -f "$APP_DIR/deploy/.env" ]; then + log "未找到 deploy/.env,复用上次安装的配置:$APP_DIR/deploy/.env" + cp "$APP_DIR/deploy/.env" deploy/.env + else + die "缺少 deploy/.env,请先: + cp deploy/.env.example deploy/.env && vi deploy/.env + + 需要填写的内容(数据库连接信息由部署方提供): + DB_HOST 现有 MySQL / MariaDB 地址 + DB_PORT 端口,默认 3306 + DB_USER 数据库账号 + DB_PASS 数据库口令(注意不要加引号) + DB_NAME 数据库名" + fi +fi set -a # shellcheck disable=SC1091