
shakapark/backup-toolBackup-Tool 是一个专为数据备份设计的Docker镜像,旨在简化各类数据的自动化备份流程。该镜像集成了多种备份工具与调度机制,支持灵活配置备份源、目标存储及执行周期,适用于从小型服务器到企业级应用的各类数据保护场景。
bashdocker run -d \ --name backup-tool \ -v /path/to/source:/backup/source \ # 挂载需备份的源目录 -v /path/to/local-backup:/backup/dest \ # 挂载本地备份目标目录(可选) -e BACKUP_SOURCE="/backup/source" \ # 备份源路径 -e BACKUP_DEST="local:/backup/dest" \ # 备份目标(格式:类型:路径) -e SCHEDULE="0 3 * * *" \ # cron表达式,每日凌晨3点执行备份 -e COMPRESSION="gzip" \ # 启用压缩(可选:gzip/bzip2/none) backup-tool:latest
| 环境变量 | 描述 | 默认值 |
|---|---|---|
BACKUP_SOURCE | 备份源路径或连接信息(文件路径如/data,数据库如mysql://user:pass@host:port/db) | 无(必填) |
BACKUP_DEST | 备份目标,格式为类型:路径(如local:/backup、s3:s3://mybucket/backups) | 无(必填) |
SCHEDULE | cron表达式,指定备份执行周期(如0 */6 * * *表示每6小时) | * * * * *(每分钟,仅测试用) |
COMPRESSION | 压缩方式,可选值:gzip、bzip2、none | gzip |
ENCRYPTION_KEY | 加密密钥(如设置,备份文件将使用AES-256加密) | 无(不加密) |
RETENTION_DAYS | 备份文件保留天数,自动清理过期备份 | 30 |
bashdocker run -d \ --name mysql-backup \ -e BACKUP_SOURCE="mysql://root:password@mysql-host:3306/mydb" \ # MySQL连接信息 -e BACKUP_DEST="s3:s3://my-backup-bucket/mysql" \ # 备份至S3 -e AWS_ACCESS_KEY_ID="your-access-key" \ # S3访问密钥(如目标为S3时必填) -e AWS_SECRET_ACCESS_KEY="your-secret-key" \ -e SCHEDULE="0 2 * * *" \ # 每日凌晨2点备份 -e RETENTION_DAYS=7 \ # 保留7天备份 backup-tool:latest
yamlversion: '3' services: backup: image: backup-tool:latest volumes: - ./local-backups:/backup/local # 本地备份存储 environment: - BACKUP_SOURCE="/data" # 假设挂载了/data目录到容器内 - BACKUP_DEST="local:/backup/local" - SCHEDULE="0 0 * * *" # 每日午夜执行 - COMPRESSION="bzip2" - RETENTION_DAYS=14 restart: always # 确保容器持续运行以执行定时任务
BACKUP_SOURCE和BACKUP_DEST配置的可访问性,避免权限问题ENCRYPTION_KEY,丢失将导致无法恢复数据



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务