Docker-compose: 不支持服务服务的配置选项: ‘ web’

我正在浏览 < em > 开始使用 Docker Compose 页。

在步骤3中,我创建了一个如下 docker-compose.yml文件:

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

但是当我跑步的时候:

$ docker-compose up

我得到以下错误:

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

我做错了什么? 我不知道发生了什么事。

177298 次浏览

Support for the version 2 compose file format was introduced in docker-compose version 1.6, released around February of this year.

You're using 1.3.3, from July 2015.

You need to upgrade to a more recent version to use the version 2 format configuration files.

Since this is the first result on Googling "docker-compose Unsupported config option for services", I would like to add that the most common reason as of 2020 is missing of version: "3".

Just add version: "3" to the start of your docker-compose.yml.

From the docs:

There are currently three versions of the Compose file format:

  1. Version 1, the legacy format. This is specified by omitting a version key at the root of the YAML.
  2. Version 2.x. This is specified with a version: '2' or version: '2.1', etc., entry at the root of the YAML.
  3. Version 3.x, the latest and recommended version, designed to be cross-compatible between Compose and the Docker Engine’s swarm mode. This is specified with a version: '3' or version: '3.1', etc., entry at the root of the YAML.

In my case i had used a wrong indentation. Recheck indentation of your docker-compose file to ensure it is correct

I would recommend upgrading your docker-compose version, At the moment the safest way to upgrade docker-compose is by deleting it and reinstalling it.

rm /usr/local/bin/docker-compose

Reinstall:

Update the apt package index, and install the latest version of Docker Compose:

 sudo apt-get update


sudo apt-get install docker-compose-plugin

Alternatively, to install a specific version of Compose CLI plugin:

a. List the versions available in your repo:

apt-cache madison docker-compose-plugin

b. From the list obtained use the version string you can in the second column to specify the version you wish to install. c. Install the selected version:

sudo apt-get install docker-compose-plugin=<VERSION_STRING>

where <VERSION_STRING> is, for example,2.3.3~ubuntu-focal.

And verify that Docker Compose is installed correctly by checking the version.

docker compose version