专属
文档
插件
助手
邀请
顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像

交易
充值流量我的订单

文档

工具

功能
提交工单页面收录

帮助
轩辕镜像免费版

其他
关于我们网站地图
热门搜索:
volumerize

blacklabelops/volumerize

自动构建
blacklabelops

基于Duplicity的Docker卷备份与恢复解决方案,支持多种后端存储(文件系统、S3、Dropbox等),提供定时备份、容器启停控制、加密等功能,可参数化配置,简化Docker卷数据备份管理。

33 次收藏下载次数: 0状态:自动构建维护者:blacklabelops仓库类型:镜像最近更新:3 年前
让 AI 帮你使用轩辕镜像? · 展开查看说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

使用轩辕镜像,把时间还给真正重要的事。点击查看
中文简介
标签列表
镜像标签列表与下载命令
使用轩辕镜像,把时间还给真正重要的事。点击查看

Blacklabelops Volumerize

Blacklabelops是基于命令行工具Duplicity的Docker卷备份与恢复解决方案。通过容器化和参数化设计,简化了使用和配置流程。

重要提示:此工具并非可克隆和备份运行中数据库数据的向导工具。备份前应停止所有使用目标数据的容器,以避免意外的数据损坏。工具越简单,数据丢失风险也可能越高!请务必通过检查备份数据(如S3存储桶)验证工具是否正常工作,仔细核对配置,并启用镜像提供的检查选项(如以只读方式挂载卷)。

核心功能与特性

主要功能

  • 多后端支持
  • 定时备份调度
  • 容器启停控制

支持的后端存储

  • 文件系统
  • Amazon S3
  • DropBox
  • Google Drive
  • ssh/scp
  • rsync

更多后端请参考:Duplicity支持的后端

支持渠道

在Hipchat上留言提问:blacklabelops/hipchat

卷备份教程

Docker卷备份教程:

  • Backblaze B2:https://github.com/blacklabelops/volumerize/tree/master/backends/BackblazeB2
  • Amazon S3:https://github.com/blacklabelops/volumerize/tree/master/backends/AmazonS3
  • Dropbox:https://github.com/blacklabelops/volumerize/tree/master/backends/Dropbox
  • Google Drive:https://github.com/blacklabelops/volumerize/tree/master/backends/GoogleDrive

快速使用

只需执行以下命令即可备份Docker应用卷:

bash
$ docker run -it --rm \
    --name volumerize \
    -v yourvolume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    blacklabelops/volumerize backup

将名为yourvolume的卷挂载为源,并备份到backup_volume卷

工作原理

容器默认以守护模式启动,执行每日增量备份。通过在容器启动时定义环境变量(docker run)可实现特定行为。

应用数据必须存储在Docker卷中。可使用docker volume ls命令列出卷,通过-v选项将卷挂载到备份容器,并添加:ro选项将源设置为只读。

示例:使用Jenkins

bash
$ docker run \
     -d -p 80:8080 \
     --name jenkins \
     -v jenkins_volume:/jenkins \
     blacklabelops/jenkins

启动Jenkins并将数据存储在Docker卷jenkins_volume中。

将Jenkins数据挂载到容器内文件夹,并配置blacklabelops/volumerize将/source文件夹备份到/backup文件夹:

bash
$ docker run -d \
    --name volumerize \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    blacklabelops/volumerize

启动Volumerize。jenkins_volume卷在容器内对应/source文件夹,backup_volume卷对应/backup文件夹。

可在容器内执行命令,如立即备份或恢复:

bash
$ docker exec volumerize backup

触发备份操作。

备份多个卷

容器仅支持备份一个源文件夹(通过环境变量VOLUMERIZE_TARGET指定)。若需备份多个卷,需将多个卷挂载到同一源文件夹下。

示例:

  • 卷:application_data
  • 卷:application_database_data
  • 卷:application_configuration

将这些卷挂载到同一source文件夹下启动容器:

bash
$ docker run -d \
    --name volumerize \
    -v application_data:/source/application_data:ro \
    -v application_database_data:/source/application_database_data:ro \
    -v application_configuration:/source/application_configuration:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    blacklabelops/volumerize

对公共父文件夹/source执行Volumerize备份。

备份恢复

恢复操作简单:首先停止Volumerize容器,然后启动一个具有相同环境变量和卷但不使用只读模式的新容器!这是确保恢复目录结构与备份时一致的关键。

提示:恢复后,建议为备份容器重新添加只读选项!

示例:

原备份配置:

bash
$ docker run -d \
    --name volumerize \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    blacklabelops/volumerize

停止备份容器并执行恢复:

bash
$ docker stop volumerize
$ docker run --rm \
    -v jenkins_volume:/source \
    -v backup_volume:/backup:ro \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    blacklabelops/volumerize restore
$ docker start volumerize

触发一次性恢复。执行恢复命令的容器在完成后会被删除。

干运行(Dry Run)

可在恢复命令中添加--dry-run参数测试恢复功能:

bash
$ docker run --rm \
    -v jenkins_volume:/source \
    -v backup_volume:/backup:ro \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    blacklabelops/volumerize restore --dry-run

若需查看备份与源数据的差异,需使用verify命令:

bash
$ docker run --rm \
    -v jenkins_volume:/source \
    -v backup_volume:/backup:ro \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    blacklabelops/volumerize verify

定期备份

容器默认的定时任务设置为0 0 4 * * *(UTC时间凌晨4点)。可通过环境变量VOLUMERIZE_JOBBER_TIME设置自定义调度。

可通过环境变量TZ设置时区。

定时语法不同于标准cron,使用Jobber工具:http://dshearer.github.io/jobber/doc/v1.1/#/time-strings

示例:

bash
$ docker run -d \
    --name volumerize \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "TZ=Europe/Berlin" \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    -e "VOLUMERIZE_JOBBER_TIME=0 0 3 * * *" \
    blacklabelops/volumerize

按德国当地时间凌晨3点执行备份。

Docker容器重启

此镜像可在备份前后停止和启动Docker容器。通过环境变量VOLUMERIZE_CONTAINERS指定容器名称(空格分隔的列表)。

注意:需添加参数-v /var/run/docker.sock:/var/run/docker.sock以允许操作主机上的容器。

示例:

  • Docker容器名称:application(应用)
  • Docker容器名称:application_database(应用数据库)
bash
$ docker run -d \
    --name volumerize \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    -e "VOLUMERIZE_CONTAINERS=application application_database" \
    blacklabelops/volumerize

以下脚本将应用此启动流程:backup、backupFull、restore和periodBackup。

测试流程:

bash
$ docker exec volumerize backup

警告:确保容器使用正确的重启策略。Docker、Docker-Compose、Docker-Swarm、Kubernetes和Cattle等工具可能在Volumerize停止容器后自动重启。对运行中的实例执行备份可能导致备份损坏甚至数据损坏。务必确保docker stop命令能真正停止实例,且底层部署技术不会自动重启容器。可通过执行docker stop后运行docker ps检查容器是否确实已停止。

Duplicity参数

blacklabelops/volumerize底层使用duplicity。参考duplicity命令行选项:Duplicity CLI选项

可通过环境变量VOLUMERIZE_DUPLICITY_OPTIONS传递duplicity选项,这些选项将应用于所有blacklabelops/volumerize命令和脚本。例如,--dry-run选项将使整个容器进入模拟模式,所有duplicity命令仅执行模拟操作。

示例:

bash
$ docker run -d \
    --name volumerize \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    -e "VOLUMERIZE_DUPLICITY_OPTIONS=--dry-run" \
    blacklabelops/volumerize

仅在干运行模拟模式下操作。

对称备份加密

可通过环境变量PASSPHRASE设置安全密码对备份进行加密。

生成安全密码:

bash
$ docker run --rm blacklabelops/volumerize openssl rand 128 -base64

在控制台输出合适的密码。

示例:

bash
$ docker run -d \
    --name volumerize \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    -e "PASSPHRASE=Jzwv1V83LHwtsbulVS7mMyijStBAs7Qr/V2MjuYtKg4KQVadRM" \
    blacklabelops/volumerize

功能与上述相同,但所有备份均会加密。

非对称密钥备份加密

可使用安全密钥对备份进行加密。

需准备:

  • 密钥,通过环境变量VOLUMERIZE_GPG_PRIVATE_KEY指定
  • 密钥密码,通过环境变量PASSPHRASE指定

生成密钥:在计算机上安装gpg,执行:

bash
$ gpg2 --full-gen-key
Please select what kind of key you want:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)
Your selection? 1
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)
Requested keysize is 2048 bits   
Please specify how long the key should be valid.
         0 = key does not expire
      <n>  = key expires in n days
      <n>w = key expires in n weeks
      <n>m = key expires in n months
      <n>y = key expires in n years
Key is valid for? (0)
Key does not expire at all
Is this correct? (y/N) y

GnuPG needs to construct a user ID to identify your key.

Real name: YourName
Email address: yourname@youremail.com
Comment:                            
You selected this USER-ID:
    "YourName <yourname@youremail.com>"

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
$ gpg2 --export-secret-keys --armor yourname@youremail.com > MyKey.asc

注意:当前镜像仅支持无密码的密钥。导入流程存在问题,若密钥有密码会提示输入。

示例:

bash
$ docker run -d \
    --name volumerize \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -v $(pwd)/MyKey.asc:/key/MyKey.asc \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    -e "VOLUMERIZE_GPG_PRIVATE_KEY=/key/MyKey.asc" \
    -e "PASSPHRASE=" \
    blacklabelops/volumerize

导入无密码的密钥。

测试流程:

bash
$ docker exec volumerize backup

定期强制全量备份

默认行为:初始备份为全量备份,后续执行增量备份。可通过环境变量VOLUMERIZE_FULL_IF_OLDER_THAN定期强制全量备份。

格式:数字后接s(秒)、m(分)、h(时)、D(天)、W(周)、M(月)或Y(年)。

示例:

  • 3天后:3D
  • 1个月后:1m
  • 55分钟后:55m

Volumerize示例:

bash
$ docker run -d \
    --name volumerize \
    -v jenkins_volume:/source:ro \
    -v backup_volume:/backup \
    -v cache_volume:/volumerize-cache \
    -e "TZ=Europe/Berlin" \
    -e "VOLUMERIZE_SOURCE=/source" \
    -e "VOLUMERIZE_TARGET=file:///backup" \
    -e "VOLUMERIZE_FULL_IF_OLDER_THAN=7D" \
    blacklabelops/volumerize

每7天强制执行一次全量备份。

容器脚本

容器启动时会创建一些便捷脚本:

脚本描述
backup使用容器配置创建备份
backupFull使用容器配置创建全量备份
backupIncremental使用容器配置创建增量备份
verify比较最新备份与本地文件
restore注意!触发使用最新备份立即强制恢复
periodicBackup定时任务触发的脚本
startContainers启动指定的Docker容器
stopContainers停止指定的Docker容器
remove-older-than删除旧备份
cleanCacheLocks清理旧缓存锁

示例:在运行中的容器内触发脚本

bash
$ docker exec volumerize backup

在名为volumerize的容器内执行backup脚本。

传递脚本参数:

blacklabelops/volumerize底层使用duplicity,参考duplicity命令行选项:Duplicity CLI选项

示例:

bash
$ docker exec volumerize backup --dry-run

--dry-run将模拟备份过程,不实际

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 volumerize 镜像标签

docker pull docker.xuanyuan.run/blacklabelops/volumerize:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull blacklabelops/volumerize:<标签>

更多 volumerize 镜像推荐

blacklabelops/logrotate logo

blacklabelops/logrotate

blacklabelops
这是Docker化的Logrotate镜像,用于对Docker容器日志文件进行轮转、压缩与管理,支持自定义轮转间隔、文件大小、保留数量等配置,可作为边车容器使用。
61 次收藏5000万+ 次下载
7 年前更新
blacklabelops/logio logo

blacklabelops/logio

blacklabelops
该Docker镜像集成Log.io和Harvester组件,提供日志收集、实时监控与Web界面展示功能,支持Docker日志及自定义日志的集中管理,可通过配置实现多流监控与HTTPS加密。
11 次收藏100万+ 次下载
8 年前更新
blacklabelops/jira logo

blacklabelops/jira

blacklabelops
该Docker镜像提供可组合且经Postgres和MySQL容器测试的Atlassian Jira部署方案,支持Jira Software、Service Desk及Core版本,助力团队高效计划、跟踪和发布软件。
99 次收藏100万+ 次下载
7 年前更新
blacklabelops/jobber logo

blacklabelops/jobber

blacklabelops
这是一个Docker化的Jobber镜像,用于执行定时任务(Cron Jobs),支持通过环境变量配置多个任务,无需复杂文件操作,可灵活定义任务执行时间、错误处理等规则。
15 次收藏50万+ 次下载
7 年前更新
blacklabelops/postgres logo

blacklabelops/postgres

blacklabelops
基于Alpine的PostgreSQL镜像,支持官方Postgres参数,特别添加适用于Atlassian应用的数据库编码和排序规则设置,便于快速部署Atlassian应用所需的PostgreSQL数据库。
4 次收藏100万+ 次下载
9 年前更新
blacklabelops/confluence logo

blacklabelops/confluence

blacklabelops
Docker化的Atlassian Confluence镜像,支持团队协作、文档管理与工作讨论,提供多种数据库配置、代理设置及SSO集成,便于快速部署和管理。
42 次收藏100万+ 次下载
7 年前更新

查看更多 volumerize 相关镜像

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

一键安装

一键安装 Docker

Linux Docker 一键安装

需要其他帮助?请查看我们的 常见问题 Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

免费版与专业版区别

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
blacklabelops/volumerize
教程轩辕镜像功能与使用教程
价格查看流量套餐与价格
热门查看热门 Docker 镜像推荐
博客Docker 镜像公告与技术博客
官方公众号:源码跳动|官方技术交流群:831623681
官方公众号:源码跳动|官方技术交流群:|问题咨询请:提交工单
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.