Отношение docker-engine к docker-compose to docker составить файл
Повторю:
Заранее спасибо за ваше время и внимание.
Какая связь между файлом docker-compose.yml и исполняемым файлом docker-compose является информацией, которую я пытаюсь получить?
Вот мой пример.
$>docker-compose version
docker-compose version 1.9.0, build 2585387
docker-py version: 1.10.6
CPython version: 2.7.9
OpenSSL version: OpenSSL 1.0.1t 3 May 2016
$> docker version
Client:
Version: 17.04.0-ce
API version: 1.28
Go version: go1.7.5
Git commit: 78d1802
Built: Tue May 30 18:21:18 2017
OS/Arch: linux/amd64
Server:
Version: 17.04.0-ce
API version: 1.28 (minimum version 1.12)
Go version: go1.7.5
Git commit: 78d1802
Built: Tue May 30 18:21:18 2017
OS/Arch: linux/amd64
Experimental: false
Теперь файл docker-compose.yml
version: "2.2"
services:
database:
image: "${DOCKER_REPO_NAME}.......
Основываясь на документации по адресу https://docs.docker.com/compose/compose-file, если версия docker-engine 17.04, она должна поддерживать директиву версии файла docker-compose 3.2.
Однако я вижу это. ошибка
***** ОШИБКА следует за ******
$>docker-compose ${NO_ANSI} config -q
ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a version of "2" (or "2.0") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/
Итак, вопрос в том, что я делаю не так?
-Narahari
3 ответа
Версия 1.9.0 docker-compose поддерживает только до версии 2.1 спецификации файла compose.
Ваш docker-compose довольно старый и поддерживает до версии 2.1 файлов docker-compose.yml.
Версия 2.2 поддерживается версией 1.13.0 или выше.
Вы либо обновляете docker-compose (рекомендуется), либо понижаете.yml до версии v1 или v2.1.
В справочном руководстве.yml есть таблица с примечаниями о совместимости.
Docker Compose версия 1.9.0...
Представлена версия 2.1
docker-compose.yml
Спецификация. Эту версию необходимо использовать с Docker Engine 1.12 или выше.
Похоже, вам нужен по крайней мере Docker Compose 1.13.0, чтобы использовать файл compose с version: "2.2"
, (Хотя я не вижу этого четко задокументированного нигде, кроме отдельных страниц GitHub.)