请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

docker集群后,如何映射docker中的数据文件到指定的目录

docker集群后,如何映射docker中的数据文件到指定的目录?

我们有自己的数据盘,我看到https://github.com/percona/percona-docker/blob/master/pxc-57/Dockerfile中也有VOLUME ["/var/lib/mysql", “/var/log/mysql”],按理运行容器的参数中加入映射目录就可以了把?

环境:在同一宿主机上建两个节点。

节点1,可以成功创建:
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Abc123 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=Abc123 -v /persistent_data/wonly/mysqlnode1/data:/var/lib/mysql -v /persistent_data/wonly/mysqlnode1/log:/var/log/mysql --privileged --name=node1 --net=swarm_mysql pxc

节点2,却创建失败,docker logs node2没有任何日志:
docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=Abc123 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=Abc123 -e CLUSTER_JOIN=node1 -v /persistent_data/wonly/mysqlnode2/data:/var/lib/mysql -v /persistent_data/wonly/mysqlnode2/log:/var/log/mysql --privileged --name=node2 --net=swarm_mysql pxc

正在回答 回答被采纳积分+3

1回答

神思者 2019-11-11 19:25:41

pxc容器支持数据卷,不支持目录映射

0 回复 有任何疑惑可以回复我~
  • 提问者 慕仙8599484 #1
    只支持数据卷,docker的volumes在系统盘,但是想把mysql数据存在SSD盘中。这个有什么方案可以解决吗?前面尝试了将/var/lib/docker目录下,做个软连接,如:volumes -> /persistent_data/docker/volumes/,好像也不行。报错:ERROR 1213 (40001) at line 1: Deadlock found when trying to get lock; try restarting transaction。
    回复 有任何疑惑可以回复我~ 2019-11-12 10:24:14
  • 提问者 慕仙8599484 #2
    还有个问题,只支持数据卷,这个是基于什么考虑的?不能做目录映射?
    回复 有任何疑惑可以回复我~ 2019-11-12 10:25:35
  • 神思者 回复 提问者 慕仙8599484 #3
    数据卷不支持软链接的,这个办法行不通
    回复 有任何疑惑可以回复我~ 2019-11-12 11:47:49
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信