首页 > 解决方案 > “docker-compose.yml”版本被拒绝,但为什么?

问题描述

我的 YML 文件开头是这样的:

 version: "3.7"
 services:
 ... ... etc ... ...

但我得到这个错误:

 ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this [...]

但是,Docker 是“Ubuntu 的最新版本!”

$ docker version
Client:
 Version:           18.09.7
 API version:       1.39
 Go version:        go1.10.1
 Git commit:        2d0083d
 Built:             Fri Aug 16 14:20:06 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server:
 Engine:
  Version:          18.09.7
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.1
  Git commit:       2d0083d
  Built:            Wed Aug 14 19:41:23 2019
  OS/Arch:          linux/amd64
  Experimental:     false

$ docker-compose version
docker-compose version 1.17.1, build unknown
docker-py version: 2.5.1
CPython version: 2.7.17
OpenSSL version: OpenSSL 1.1.1  11 Sep 2018

文档https://docs.docker.com/compose/compose-file/说版本 3.7 将与“ 18.06.0+”一起使用,所以我真的不明白为什么我会收到这条消息。文档会建议这个版本的 Docker 确实支持(并且期望)这个版本。

标签: docker-compose

解决方案


看起来你的版本docker-compose不兼容。您使用的版本 (1.17.1) 仅支持最高版本 3.4 的撰写文件格式。您可以在发行说明中查看兼容性矩阵:

1.17.1 发布

您可以docker-compose使用以下内容进行更新:

curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

并在此处找到有关 docker-compose 安装的更多信息


推荐阅读