微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

postgresql – 如何将docker卷从一台机器复制到另一台机器?

我在本地机器上为postgres创建了一个docker卷.

docker create volume postgres-data

然后我使用了这个卷并运行了一个docker.

docker run -it -v postgres-data:/var/lib/postgresql/9.6/main postgres

之后我做了一些数据库操作,这些操作自动存储在postgres数据中.现在我想将该卷从本地计算机复制到另一台远程计算机.怎么做同样的.

注 – 数据库大小非常大

解决方法

如果第二台计算机启用了SSH,则可以在第一台计算机上使用Alpine容器映射卷,将其捆绑并将其发送到第二台计算机.

这看起来像这样:

docker run --rm -v <SOURCE_DATA_VOLUME_NAME>:/from alpine ash -c "cd /from ; tar -cf - . " | ssh <TARGET_HOST> 'docker run --rm -i -v <TARGET_DATA_VOLUME_NAME>:/to alpine ash -c "cd /to ; tar -xpvf - "

你需要改变:

> SOURCE_DATA_VOLUME_NAME
> TARGET_HOST
> TARGET_DATA_VOLUME_NAME

或者,您可以尝试使用此帮助程序脚本https://github.com/gdiepen/docker-convenience-scripts

希望这可以帮助.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐