docker挂载数据库文件的问题有知道的吗?

我使用docker拉取了postgres的数据库镜像,运行此镜像
docker run -e POSTGRES_PASSWORD='123456' -d postgres_yun
这里,默认的用户名就是postgres密码是123456,进入容器,我们可以找到postgres的数据库的目录文件位置
/var/lib/postgres/data,此时下面已经有了很多文件。但是我想把数据库文件能够备份到本地,那么一般使用
docker -v /xxx:/zzz进行映射此时会保持本地和镜像的同步写入,问题是第一次如果执行docker -v,
docker run -v /home/xyguo/data-test:/var/lib/postgres/data -e POSTGRES_PASSWORD='123456' -d postgres_yun
那么在/var/lib/postgres/data/下的文件全部消失。因为一开始本地的文件是个空的,所以如何解决这个问题呢?

postgresql
docker
mysql
2022-08-01 13:20:08
浏览
已于2022-8-1 13:41:10修改
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
可乐鸡翅521
3

不是的,直接映射文件夹很粗暴,应该先创建卷

docker volume create --driver local \
           --opt type=none \
           --opt device=<your dir> \
           --opt o=bind \
           --name=<volume name>
然后才绑定

docker run -v <volume name>:/var/lib/postgres/data ...

分享
微博
QQ
微信
回复
2022-08-01 14:37:38
相关问题
数据库主键字段问题有知道?
1588浏览 • 1回复 待解决
关系型数据库有知道
1491浏览 • 1回复 待解决
分布式数据库选型问题有知道
2417浏览 • 1回复 待解决
如何做数据库搜索有知道
1810浏览 • 1回复 待解决
关于处理数据库时分层有知道
1740浏览 • 1回复 待解决
如何查看模拟器设备数据库文件
642浏览 • 1回复 待解决
如何导出设备中数据库文件并查看
781浏览 • 1回复 待解决
window 安装 Docker问题有知道
1426浏览 • 1回复 待解决
创建json文件问题有知道
1901浏览 • 1回复 待解决
docker 如何挂载外部文件
3220浏览 • 1回复 待解决
数据库迁移问题有了解
921浏览 • 1回复 待解决
mysql 索引问题有知道
1502浏览 • 1回复 待解决
WebView层级问题有知道
4037浏览 • 1回复 待解决
ets组件定位问题有知道?
1856浏览 • 1回复 待解决
mysql共享锁问题有知道
1002浏览 • 1回复 待解决
开发调试问题有知道
979浏览 • 1回复 待解决
Ubuntu terminal切换问题有知道
1032浏览 • 1回复 待解决