dokku/s3backupdocker-s3backup是一个Docker镜像,用于将主机卷创建为tar备份并流式传输到Amazon S3存储。它具备轻量级、高效传输和广泛兼容性的特点,适用于需要将主机数据备份到S3或S3兼容存储服务的场景。
适用于需要定期备份主机数据(如应用数据、配置文件、日志等)到Amazon S3的场景,尤其适合资源受限环境(轻量级特性)和使用自托管S3服务(如minio)的私有环境。
运行预构建镜像,需指定AWS凭证、S3存储桶名称和待备份路径:
shelldocker run -it \ -e AWS_ACCESS_KEY_ID=你的AWS访问密钥ID \ -e AWS_SECRET_ACCESS_KEY=你的AWS密钥 \ -e BUCKET_NAME=存储桶名称 \ -e BACKUP_NAME=备份名称前缀 \ -v /本地需备份路径:/backup dokku/s3backup
参数说明:
-e AWS_ACCESS_KEY_ID:AWS访问密钥ID,用于S3身份验证-e AWS_SECRET_ACCESS_KEY:AWS密钥,用于S3身份验证-e BUCKET_NAME:目标S3存储桶名称-e BACKUP_NAME:备份文件的名称前缀(最终备份文件名将包含时间戳)-v /本地需备份路径:/backup:挂载主机需备份的目录到容器内/backup路径(容器将备份此路径下的所有内容)支持自定义区域、存储类别、签名版本及S3兼容服务配置,示例如下:
shelldocker run -it \ -e AWS_ACCESS_KEY_ID=你的AWS访问密钥ID \ -e AWS_SECRET_ACCESS_KEY=你的AWS密钥 \ -e AWS_DEFAULT_REGION=us-east-1 \ -e AWS_SIGNATURE_VERSION=s3v4 \ -e S3_STORAGE_CLASS=STANDARD_IA \ -e ENDPOINT_URL=[***] \ -e BUCKET_NAME=存储桶名称 \ -e BACKUP_NAME=备份名称前缀 \ -v /本地需备份路径:/backup dokku/s3backup
高级参数说明:
AWS_DEFAULT_REGION:S3存储桶所在区域(默认:us-east-1)AWS_SIGNATURE_VERSION:S3签名版本(如s3v4)S3_STORAGE_CLASS:S3存储类别(如STANDARD_IA为低频访问存储)ENDPOINT_URL:S3兼容服务的API终端地址(自托管服务如minio时需指定)可通过GnuPG加密备份文件,需添加ENCRYPTION_KEY环境变量:
shelldocker run -it \ -e AWS_ACCESS_KEY_ID=你的AWS访问密钥ID \ -e AWS_SECRET_ACCESS_KEY=你的AWS密钥 \ -e BUCKET_NAME=存储桶名称 \ -e BACKUP_NAME=备份名称前缀 \ -e ENCRYPTION_KEY=你的加密密码 \ -v /本地需备份路径:/backup dokku/s3backup
如需自行构建镜像,步骤如下:
shelldocker build -t s3backup .
shelldocker run -it \ -e AWS_ACCESS_KEY_ID=你的AWS访问密钥ID \ -e AWS_SECRET_ACCESS_KEY=你的AWS密钥 \ -e BUCKET_NAME=存储桶名称 \ -e BACKUP_NAME=备份名称前缀 \ -v /本地需备份路径:/backup s3backup
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务