问题描述
我对 Docker 完全陌生.我按照 Docker Compose 的入门"教程中描述的步骤进行操作:
I am absolutely new to Docker. I followed steps described in Docker Compose's "Getting Started" tutorial:
- 安装 Docker 工具箱
- 启动 Docker 快速入门终端
- 添加项目文件
- 运行
docker-compose up
命令
我收到以下错误:
ERROR: for web Cannot create container for service web: Invalid bind mount spec "D:\Projects\composetest:/code:rw": Invalid volume specification: 'D:Projectscomposetest:/code:rw'
[31mERROR[0m: Encountered errors while bringing up the project.
docker-compose.yml:
docker-compose.yml:
version: '2'
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code:rw
redis:
image: "redis:alpine"
项目结构:
D:Projectscomposetest
├── app.py
├── docker-compose.yml
├── Dockerfile
└── requirements.txt
我的配置:
- Windows 10 单一语言
- Docker 工具箱 1.12.5
为什么会这样?有什么解决办法吗?
Why does it happen? Is there some workaround?
推荐答案
我找到了解决方案.问题是我没有设置环境变量 COMPOSE_CONVERT_WINDOWS_PATHS
.CLI 变量文档中对此进行了描述.
I found the solution. The problem was I didn't set the environment variable COMPOSE_CONVERT_WINDOWS_PATHS
. It is described in the CLI variables doc.
因此,如果存在此问题,您应该创建名为 COMPOSE_CONVERT_WINDOWS_PATHS
的新 Windows 环境变量并将其设置为 1
.或者你可以在docker-compose.yml
路径下创建.env
文件,内容如下:
So, if this problem exists, you should create new Windows environment variable called COMPOSE_CONVERT_WINDOWS_PATHS
and set it to 1
. Or you can create .env
file in the path docker-compose.yml
is placed with following content:
COMPOSE_CONVERT_WINDOWS_PATHS=1
它会解决这个问题.
这篇关于运行 docker-compose “Getting Started"示例导致“无效的卷规范"在 Windows 上的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!