运行docker-compose“Getting Started”示例会导致Windows上出现“无效的卷规范”

时间:2016-12-25 02:19:43

标签: docker docker-compose

我是Docker的新手。我按照Docker Compose的"Getting Started" tutorial

中描述的步骤进行操作
  1. 安装Docker Toolbox
  2. 启动Docker快速入门终端
  3. 添加项目文件
  4. 运行docker-compose up命令
  5. 我得到以下错误:

    ERROR: for web  Cannot create container for service web: Invalid bind mount spec "D:\\Projects\\composetest:/code:rw": Invalid volume specification: 'D:\Projects\composetest:/code:rw'
    [31mERROR[0m: Encountered errors while bringing up the project.
    

    搬运工-compose.yml:

    version: '2'
    services:
      web:
        build: .
        ports:
         - "5000:5000"
        volumes:
         - .:/code:rw
      redis:
        image: "redis:alpine"
    

    项目结构:

    D:\Projects\composetest
      ├── app.py
      ├── docker-compose.yml
      ├── Dockerfile
      └── requirements.txt
    

    我的配置:

    1. Windows 10单一语言
    2. Docker Toolbox 1.12.5
    3. 为什么会这样?有一些解决方法吗?

1 个答案:

答案 0 :(得分:43)

我找到了解决方案。问题是我没有设置环境变量COMPOSE_CONVERT_WINDOWS_PATHS。它在CLI variables doc中描述。

因此,如果存在此问题,则应创建名为COMPOSE_CONVERT_WINDOWS_PATHS的新Windows环境变量并将其设置为1。或者您可以在路径.env中创建docker-compose.yml文件,其中包含以下内容:

 COMPOSE_CONVERT_WINDOWS_PATHS=1

它将解决这个问题。