From 3dd9511723c0616ec7b5498c09f5c5c307b6afc5 Mon Sep 17 00:00:00 2001 From: LiuShen <3162475700@qq.com> Date: Wed, 22 Oct 2025 21:37:37 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=A3=E5=AE=8C=E5=96=84ech0=E7=9A=84?= =?UTF-8?q?=E5=A4=87=E4=BB=BD=E7=9B=AE=E5=BD=95=EF=BC=8C=E9=98=B2=E6=AD=A2?= =?UTF-8?q?=E5=A4=87=E4=BB=BD=E7=9B=AE=E5=BD=95=E4=B8=8D=E6=8C=82=E8=BD=BD?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E4=B8=A2=E5=A4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- anheyu-blog/1.4.8/docker-compose.yml | 5 +++- anheyu-blog/1.4.8/scripts/upgrade.sh | 37 ++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 anheyu-blog/1.4.8/scripts/upgrade.sh diff --git a/anheyu-blog/1.4.8/docker-compose.yml b/anheyu-blog/1.4.8/docker-compose.yml index ad87e291c..11db07554 100644 --- a/anheyu-blog/1.4.8/docker-compose.yml +++ b/anheyu-blog/1.4.8/docker-compose.yml @@ -21,7 +21,10 @@ services: networks: - 1panel-network volumes: - - ./data:/anheyu/data + - ./data/data:/anheyu/data + - ./data/themes:/anheyu/themes + - ./data/static:/anheyu/static + - ./data/backup:/anheyu/backup networks: 1panel-network: diff --git a/anheyu-blog/1.4.8/scripts/upgrade.sh b/anheyu-blog/1.4.8/scripts/upgrade.sh new file mode 100644 index 000000000..5bf6dd2c4 --- /dev/null +++ b/anheyu-blog/1.4.8/scripts/upgrade.sh @@ -0,0 +1,37 @@ +#!/bin/bash +set -e + +BASE_DIR="./data" +TEMP_DIR="./data_temp" +CONF_FILE_OLD="$BASE_DIR/conf.ini" +CONF_FILE_NEW="$BASE_DIR/data/conf.ini" + +# 1. 如果 data_temp 存在,直接删除 +if [ -d "$TEMP_DIR" ]; then + echo "发现 $TEMP_DIR,正在删除..." + rm -rf "$TEMP_DIR" +fi + +# 2. 判断当前结构 +if [ -f "$CONF_FILE_NEW" ]; then + echo "检测到新结构 ($CONF_FILE_NEW 存在),无需迁移。" + exit 0 +elif [ -f "$CONF_FILE_OLD" ]; then + echo "检测到旧结构 ($CONF_FILE_OLD 存在),开始迁移..." + + # 2.1 将 data 重命名为 data_temp + mv "$BASE_DIR" "$TEMP_DIR" + + # 2.2 创建新的目录结构 + mkdir -p "$BASE_DIR/data" "$BASE_DIR/themes" "$BASE_DIR/static" "$BASE_DIR/backup" + + # 2.3 把旧数据移到新的 data 目录 + cp -a "$TEMP_DIR"/* "$BASE_DIR/data/" 2>/dev/null || true + cp -a "$TEMP_DIR"/.[!.]* "$BASE_DIR/data/" 2>/dev/null || true + + echo "迁移完成!旧数据已移入 $BASE_DIR/data/ 下。" + echo "请检查无误后再次运行脚本,以彻底删除 $TEMP_DIR" +else + echo "未找到 $CONF_FILE_OLD 或 $CONF_FILE_NEW,无法确认目录结构,退出。" + exit 1 +fi