在windows下挂载目录到docker的mongodb容器中就是一个巨坑
来源:2-3 【动动手】一行命令在Docker中运行MongoDB

斯基姆斯
2019-05-09
在windows下挂载目录到docker的mongodb容器中就是一个巨坑,像下面这样的挂载命令:
docker run --name mymongo -v E:\\databases\\mongodb\\docker-data:/data/db -d mongo:4
一般来说,运行后,能马上看到挂载的docker-data文件夹里是有mongodb4生成的文件,但是容器就马上挂掉了,docker ps看不到有mymongo这个容器。用docker logs一下mymongo容器日志后,发现一堆handle-open: open: Operation not permitted之类的操作权限问题。(这类windows挂载的天坑我只在mongodb这个容器下见过,其它docker容器倒是正常)
在windows下,通过docker来运行mongodb,要想继续将数据写在host机器上,只能create一个docker volume(详情自己度娘,知道docker volume和挂载的区别就是);
要么在linux、mac上进行开发,就可以自然地跟着讲师的视频愉快地玩耍。
3回答
-
又是一位优秀学员~多谢你的分享~导师本人不用windows,所以课程中确实没特别照顾到使用windows的同学们,还好有你这样的课代表挺身而出~顶你的回答上去~
012019-05-17 -
斯基姆斯
提问者
2019-05-09
在windows下,新建一个docker volume来跑mongodb是ok的,我姑且先这样操作凑合跟上进度吧。毕竟现在离不开windows,不到迫不得已的时候先不转linux上玩。
20 -
小学生6年级
2020-02-09
https://stackoverflow.com/questions/43181654/locating-data-volumes-in-docker-desktop-windows。 windows 下还是比较坑,可以看下这里。不过 windows 现在安装 docker 很方便,去淘宝买个序列号,10来块钱就能升级到专业版 windows,然后直接安装就好了。
10
相似问题