From e8aeef19deb4ceda0040316003828f8e23e3a0f7 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Mon, 1 Jun 2026 15:18:58 +0800 Subject: [PATCH] =?UTF-8?q?fix(deploy):=20update.sh=20=E7=9A=84=20APP=5FDI?= =?UTF-8?q?R=20=E4=BB=8E=E8=84=9A=E6=9C=AC=E4=BD=8D=E7=BD=AE=E6=8E=A8?= =?UTF-8?q?=E5=AF=BC,=E4=B8=8D=E5=86=99=E6=AD=BB=20/opt/zcbot?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 部署目录 = 脚本所在 deploy/ 的上一级,用 readlink -f 解析(兼容相对路径 / 软链调用),仍可 APP_DIR env 覆盖。换部署路径不必再改脚本字面量。 Co-Authored-By: Claude Opus 4.8 (1M context) --- deploy/update.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/deploy/update.sh b/deploy/update.sh index 3a9255f..0c786d9 100755 --- a/deploy/update.sh +++ b/deploy/update.sh @@ -15,7 +15,7 @@ # 一次性 bootstrap(useradd / 写 systemd unit / enable)不在这里 —— 见 RUN.md §部署 一次性。 # # 可调 env(不传则用默认 / Dockerfile 默认): -# APP_DIR(/opt/zcbot) APP_USER(zcbot) SERVICE(zcbot) PORT(8765) +# APP_DIR(默认=脚本上级目录,即仓库根) APP_USER(zcbot) SERVICE(zcbot) PORT(8765) # APT_MIRROR / PIP_INDEX_URL / PIP_TRUSTED_HOST / NPM_REGISTRY 镜像源, # 默认阿里源(境内快);要稳定命中 docker cache 就别在两组源之间来回换 # (换源会从 pip 层炸开全重跑)。想用官方源:PIP_INDEX_URL= sudo -E bash ...(置空) @@ -23,7 +23,11 @@ set -euo pipefail -APP_DIR="${APP_DIR:-/opt/zcbot}" +# 部署目录 = 本脚本所在目录(deploy/)的上一级,不写死路径;仍可 env 覆盖。 +# readlink -f 解析软链 + 相对路径,兼容 `sudo ./update.sh` / `sudo bash /abs/deploy/update.sh` +# / 经软链调用(Ubuntu coreutils 有 readlink -f)。 +SCRIPT_DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" +APP_DIR="${APP_DIR:-$(dirname "$SCRIPT_DIR")}" APP_USER="${APP_USER:-zcbot}" SERVICE="${SERVICE:-zcbot}" PORT="${PORT:-8765}"