docker-compose:服务服务的不支持的配置选项:' web'

时间:2016-04-19 17:05:06

标签: docker docker-compose

我正在浏览docker-compose的入门页面: https://docs.docker.com/compose/gettingstarted/

在第3步中,我按照描述制作了一个docker-compose.yml文件:

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

但是当我跑步时:

$ docker-compose up

我收到以下错误:

  

服务服务的不支持的配置选项:' web'

我无法弄清楚发生了什么。有什么帮助吗?

谢谢

2 个答案:

答案 0 :(得分:41)

在今年2月左右发布的docker-compose version 1.6中引入了对版本2撰写文件格式的支持。

您从2015年7月开始使用1.3.3。

您需要升级到更新版本才能使用版本2格式的配置文件。

答案 1 :(得分:1)

由于这是谷歌搜索“服务的docker-compose不支持的配置选项”的第一个结果,因此我想补充一下,截至2020年最常见的原因是缺少version: "3"

只需将version: "3"添加到docker-compose.yml的开头即可。

来自docs

当前有三种版本的Compose文件格式:

  1. 版本1,旧格式。通过省略YAML根目录中的版本密钥来指定。
  2. 版本2.x。在YAML的根目录中使用版本“ 2”或版本“ 2.1”等进行指定。
  3. 3.x版是最新和推荐的版本,旨在在Compose和Docker Engine的swarm模式之间相互兼容。在YAML的根目录中使用版本:“ 3”或版本:“ 3.1”等进行指定。