win11平台下的docker-desktop中的volume位置问题

因为需要搞个本地的mysql数据库,而且本地安装的程序较多,不想再安mysql了,就想到使用docker来安装。而且因为数据巨大,所以想到直接使用转移data文件夹的方式。

各种查询,而且还使用ai查询,他们都提到,所有的镜像和volume都存在docker-desktop-data里。而现在docker官网下载的是docker28,据说(未考证)从docker4开始,就不再有docker-desktop-data这个了。可以本机执行:

# 查看wsl有哪些发行版
wsl --list -a

会发现只有ubuntu和docker-desktop。

好了,到主要内容部分了。

# 创建一个volume
docker volume create mysql_data

# 查看这个volume在哪
docker volume inspect mysql_data

执行了inspect后,会有一个Mountpoint:"/var/lib/docker/volumes/mysql_data/_data"。

咦,这个路径在哪?

想到volume的本质是一个数据卷,所以它应该是在wsl中的docker-desktop里,但是那里根本没有这个目录。

后来经研究,发现它实际上是在:

/mnt/docker-desktop-disk/data/docker/volumes/

目录下,汗。

接下来就好办了,将data文件夹复制到这个目录下,就可以docker run了。

不过还要注意一点,如果库里之前有lower-case-table-names=1的设置,则需要在run的时候设置:

docker run -d \
    --name mysql \
    -v mysql_data:/var/lib/mysql \
    -e MYSQL_ROOT_PASSWORD=mysql \
    -p 3306:3306 \
    mysql:8.0
    --lower-case-table-name=1

这样就ok了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值