Files
docker-backup/config/backup.yml.example
Wang Defa a00314964d feat(backup): 添加单文件备份功能
- 添加 files 配置节,支持备份多个单独文件
- 实现 backup_files() 函数,处理单文件备份逻辑
- 更新 merge_backups() 函数,支持合并 files 备份
- 更新配置文件示例,添加 files 配置说明
- 更新 README 文档:
  - 添加单文件备份功能说明
  - 添加 files 配置示例
  - 添加单文件恢复详细步骤
  - 更新备份文件结构说明
  - 添加单文件完整性验证方法
  - 添加 v1.3.0 更新日志

使用场景:
- 备份配置文件(如 /etc/nginx/nginx.conf)
- 备份环境变量文件(如 /opt/app/.env)
- 备份其他重要的单个文件

备份结构:
backup.tar.gz
├── folders/folders.tar.gz  # 文件夹备份
├── files/files.tar.gz      # 单文件备份
└── mysql/mysql.sql.gz      # 数据库备份
2025-12-26 13:06:33 +08:00

88 lines
2.0 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Docker Backup 配置文件示例
# 使用前请复制此文件为 backup.yml 并根据实际情况修改配置
# 备份基础配置
backup:
# 备份文件存放目录(绝对路径)
output_dir: "/var/backups/docker-backup"
# 备份文件名前缀
prefix: "backup"
# 旧备份清理策略
retention:
# 是否启用自动清理
enabled: true
# 保留最近 N 天的备份
keep_days: 7
# 或者保留最近 N 个备份文件(如果设置了 keep_days此项将被忽略
# keep_count: 10
# 文件夹备份配置
folders:
# 是否启用文件夹备份
enabled: true
# 需要备份的文件夹列表(支持多个)
sources:
- "/var/lib/docker/volumes"
- "/opt/app/data"
# 需要排除的文件夹/文件模式(相对于 sources 的路径)
excludes:
- "*/logs"
- "*/temp"
- "*/cache"
- "*/.git"
- "*/node_modules"
# 单文件备份配置
files:
# 是否启用单文件备份
enabled: true
# 需要备份的文件列表(支持多个)
sources:
- "/etc/docker-backup/config.yml"
- "/etc/nginx/nginx.conf"
- "/opt/app/.env"
# MySQL 数据库备份配置
mysql:
# 是否启用 MySQL 备份
enabled: true
# MySQL 容器名称
container_name: "mysql"
# 数据库连接配置
username: "root"
password: "your_password_here"
# 要备份的数据库列表(留空表示备份所有数据库)
databases:
- "database1"
- "database2"
# 或者设置为 "all" 备份所有数据库
# databases: "all"
# 日志配置
logging:
# 是否启用日志
enabled: true
# 日志文件路径
log_file: "/var/log/docker-backup.log"
# 日志级别DEBUG, INFO, WARN, ERROR
level: "INFO"
# 通知配置(可选)
notification:
# 是否启用通知
enabled: false
# 通知方式email, webhook
method: "webhook"
# Webhook URL用于发送备份状态
webhook_url: "https://example.com/webhook"
# 仅在备份失败时通知
on_failure_only: true