首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows上,绑定挂载卷在docker -组合中的行为与运行的坞库不同

问在Windows上,绑定挂载卷在docker -组合中的行为与运行的坞库不同
EN

Stack Overflow用户
提问于 2018-04-13 17:19:04
回答 1查看 3.5K关注 0票数 5

启动Linux容器时(详见下文)。我看到了docker run ...的成功,但是docker-compose up失败了,抱怨绑定挂载路径。感觉docker run正在绑定将卷安装到linux (通过Hyper )

船坞组合误差

无法为服务注册程序创建容器:B‘挂载拒绝:源路径"\var\run\docker.sock:/tmp/docker.sock“不是有效的Windows路径’

以下是我如何启动容器的详细信息:

Docker Run (按预期工作):

代码语言:javascript
复制
docker run --network=host --volume=/var/run/docker.sock:/tmp/docker.sock gliderlabs/registrator consul://localhost:8500

码头工人组成:

代码语言:javascript
复制
registrator:
  image: gliderlabs/registrator
  command: "consul://consul:8500"
  network_mode: host
  volumes:
   - /var/run/docker.sock:/tmp/docker.sock

操作系统: Windows 10 1709 (OS Build 16299.371):Windows: 18.04.0-ce Docker组合: 1.21.0

EN

回答 1

Stack Overflow用户

发布于 2018-04-13 18:03:31

我做这个工作已经太久了。在这里问了一个问题,过了一会儿我找到了答案。唉,希望我学到的东西能帮助到一个人。

我遇到了docker GitHub问题#4303,其中一个指导是设置这个环境变量:

代码语言:javascript
复制
SET COMPOSE_CONVERT_WINDOWS_PATHS=1

在调用docker-compose up的shell中这样做会使compose的行为与run一样。容器现在正在绑定挂载Linux主机路径,而不是试图映射windows主机路径。这对我来说没什么意义,但很管用。

来自撰写文档

COMPOSE_CONVERT_WINDOWS_PATHS在卷定义中启用从Windows样式到Unix样式的路径转换.Windows上的Docker Machine和Docker工具箱的用户应始终设置此设置。默认为0。支持值: true或1启用,false或0禁用。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49822178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档