chore: 砍COS改造(deploy.yml改artifact传递+gitea-backup可移植部署包+改造步骤文档)
This commit is contained in:
1 parent
a74b3c7127
commit
2388694e8a
8 files changed
+729
-147
No files matched your search
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
# =============================================================================
|
||||
# Gitea 部署包 —— 一键备份
|
||||
# 备份内容:
|
||||
# 1. gitea dump(仓库 + 用户 + 配置 + secrets 加密导出)
|
||||
# 2. 完整 data 卷(gitea.db / app.ini / runner 配置 / upyun-sync 目录)
|
||||
# 产物输出到 backups/ 目录
|
||||
# =============================================================================
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
ROOT_DIR="$(dirname "$SCRIPT_DIR")"
|
||||
BACKUP_DIR="$ROOT_DIR/backups"
|
||||
STAMP="$(date +%Y%m%d-%H%M%S)"
|
||||
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
echo "==> 1/2 导出 Gitea dump(含 secrets)..."
|
||||
docker compose -f "$ROOT_DIR/docker-compose.yml" exec -T gitea \
|
||||
gitea dump --config /data/gitea/conf/app.ini \
|
||||
--file /data/gitea-dump.zip \
|
||||
-R -S 2>/dev/null || {
|
||||
echo "⚠️ gitea dump 失败(容器可能未运行),跳过,仅备份 data 卷"
|
||||
}
|
||||
# 把 dump 产物从容器拷出来
|
||||
docker compose -f "$ROOT_DIR/docker-compose.yml" cp \
|
||||
gitea:/data/gitea-dump.zip "$BACKUP_DIR/gitea-dump-$STAMP.zip" 2>/dev/null || true
|
||||
|
||||
echo "==> 2/2 打包 data 卷..."
|
||||
tar -czf "$BACKUP_DIR/data-$STAMP.tar.gz" -C "$ROOT_DIR" data/
|
||||
|
||||
echo ""
|
||||
echo "✅ 备份完成:"
|
||||
ls -lh "$BACKUP_DIR" | tail -5
|
||||
echo ""
|
||||
echo "⚠️ 产物含密钥,请勿上传网盘/公开仓库。"
|
||||
Reference in new issue
Block a user