macOS安装Docker后volume位置问题

在Mac上使用Docker Desktop Manager搭建Redis哨兵时遇到挂载问题,提示/opt/docker/redis/data/redis_data1路径未知。实际上,macOS上的Docker运行在虚拟环境中,需通过nsenter1进入VM找到卷挂载路径,解决方法是运行docker run --pid=host --privileged -it --rm justincormack/nsenter1,然后查找"/var/lib/docker/volumes"。

首先不建议在Mac上安装和使用Docker!

首先看一下问题背景:在搭建Redis哨兵+Docker时,使用了Mac OS,并安装了Docker Desktop Manager。需要对redis.conf和持久化文件做挂载映射,找了一些文章按步骤操作了起来...

docker pull redis:latest #拉取镜像

cd /opt/docker/redis #这里docker和redis文件夹都是mkdir手动创建的

vim docker-compose.yml #新建并编辑内容 内容不是本篇重点掠过...

mkdir conf data #建立存放配置文件和数据文件的文件夹

最终效果:

问题来了:for redis-master Cannot start service master: Mounts denied: The path /opt/docker/redis/data/redis_data1 is not shared from the host and is not known to Docker

该路径对于Docker来说是未知路径... 

那么macOS上Docker卷挂载路径都在哪里呢??? 看一下实际情况吧!

奇怪的是我机器上没有这个/var/lib/docker/volumes/c4.....34/_data的路径!!!!

纠结了半天 原来是macOS上的Docker是运行在一个虚拟环境里的 ,所以需要先进入这个VM。进这个VM有好几个版本的说法:

方法一:使用 screen〜/Library/Containers/com.docker.docker/Data/vms/0/tty 进入vm       注:我这里是无效的 

方法二:docker run --pid=host --privileged -it --rm justincormack/nsenter1

启动一个名为justincormack/nsenter1的容器

 

再查找"/var/lib/docker/volume" 

就可以继续后续的操作了!卷挂载的路径就是这里了! 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值