我使用以下命令创建了一个docker postgis容器:
docker run -p 5435:5432 -e POSTGRES_PASSWORD=xxxxxxx -e POSTGRES_INITDB_ARGS="-d" mdillon/postgis:9.6
这为/ var / lib / docker / volumes / [some_very_long_id] / _ data
中的数据创建了一个卷现在我需要将这个卷移到其他地方,以便为我的外包承包商提供备份......而且不知道如何做到这一点。我有点迷失,因为例如数据量和fs安装似乎有不同的替代方案。
那么今天做到这一点的正确方法是什么?以及如何将我当前的数据目录移动到更好的位置?
感谢。
答案 0 :(得分:1)
您可以在运行容器时声明卷装入。例如,您可以像这样运行容器:
docker run -p 5435:5432 -e POSTGRES_PASSWORD=xxxxxxx -e POSTGRES_INITDB_ARGS="-d" \
-v /the/path/you/want/on/your/host:/var/lib/postgresql/data \
mdillon/postgis:9.6
这样,postgres数据目录将位于主机的/the/path/you/want/on/your/host
中。
答案 1 :(得分:1)
我没有检查或深入搜索,但在您的情况下,我建议您执行以下步骤:
pg_basebackup
获取旧容器中的所有数据到新容器。或者使用复制。因此,您有容器外的数据文件夹。
希望它会对你的情况有所帮助。