gpt4 book ai didi

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

转载 作者:IT老高 更新时间:2023-10-28 21:42:16 28 4
gpt4 key购买 nike

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

docker create volume postgres-data

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

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

之后我做了一些数据库操作,这些操作自动存储在 postgres-data 中。现在我想将该卷从我的本地机器复制到另一台远程机器。如何做同样的事情。

注意 - 数据库非常大

最佳答案

如果第二台机器启用了 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

希望这会有所帮助。

关于postgresql - 如何将 docker 卷从一台机器复制到另一台机器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42973347/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com