使用Volumerize用scp备份我的docker卷?

时间:2017-08-18 19:33:10

标签: docker backup scp docker-volume

我想使用scp / sftp备份到另一台服务器上的几个docker卷。我不知道如何处理,所以我决定看看blacklabelops/volumerize GitHub project.

此工具基于命令行工具Duplicity。 Dockerized和Parameterized,以便于使用和配置。 Tutorial正在处理一个詹金斯码头工人,但我不明白如何提及我想要使用pem文件。

我尝试过不同的解决方案(在scp命令行中添加-i选项),但目前没有任何成功。

Duplicity man page提到使用cacert pem文件(--ssl-cacert-file选项),但我想我必须在运行docker(使用-e选项)时创建一个env变量,而我不知道要使用哪个名称。

在这里,我到目前为止,有人可以指出我正确的方向吗?

docker run -d --name volumerize -v jenkins_volume:/source:ro -v backup_volume:/backup     -e "VOLUMERIZE_SOURCE=/source"  -e "VOLUMERIZE_TARGET=scp://me@serverip/home/backup" blacklabelops/volumerize

1 个答案:

答案 0 :(得分:1)

选项--ssl-cacert-file仅用于主机验证,不用于身份验证。

我找到了关于如何在scp命令中添加pem文件的示例:

scp -i /path/to/your/.pemkey -r /copy/from/path user@server:/copy/to/path

参数-i /path/to/your/.pemkey可以在blacklabelops / volumerize中传递  使用env变量`VOLUMERIZE_DUPLICITY_OPTIONS``

示例:

$ docker run -d \
  --name volumerize \
  -v jenkins_volume:/source:ro \
  -v backup_volume:/backup \
  -e "VOLUMERIZE_SOURCE=/source" \
  -e "VOLUMERIZE_TARGET=scp:///backup" \
  -e 'VOLUMERIZE_DUPLICITY_OPTIONS=--ssh-options "-i /path/to/your/.pemkey"' \
blacklabelops/volumerize