Я просматриваю страницу Начало работы с 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

Я получаю следующую ошибку:

Неподдерживаемый вариант конфигурации для службы service: 'web'

Что я делаю неправильно? Я не мог понять, что происходит.

46
DarcliGht 19 Апр 2016 в 20:05

2 ответа

Лучший ответ

Поддержка формата файла compose версии 2 была представлена в версии 1.6 docker-compose, выпущенной примерно в Февраль этого года.

Вы используете 1.3.3 с июля 2015 года.

Вам необходимо выполнить обновление до более новой версии, чтобы использовать файлы конфигурации формата версии 2.

54
larsks 20 Апр 2016 в 12:14

Так как это первый результат поиска в Google «docker-compose Unsupported config option for services», я хотел бы добавить, что наиболее распространенной причиной по состоянию на 2020 год отсутствует version: "3".

Просто добавьте version: "3" в начало вашего docker-compose.yml.

Из документов:

В настоящее время существует три версии формата файла Compose:

  1. Версия 1, устаревший формат. Это указывается путем пропуска ключа версии в корне YAML.
  2. Версия 2.x. Это указывается с записью версии: '2' или версии: '2.1' и т. Д. В корне YAML.
  3. Версия 3.x, последняя и рекомендуемая версия, предназначена для перекрестной совместимости между Compose и режимом Swarm Docker Engine. Это указывается с записью версии: '3' или версии: '3.1' и т. Д. В корне YAML.
0
ospider 25 Авг 2020 в 00:51