这是我的docker-compose.yml文件:
version: '3.1'
services:
a:
image: tutum/hello-world
b:
image: tutum/hello-world
secrets:
id: my_password
如果我运行$ docker-compose-up
我明白了:
" ./docker-compose.yml"中的版本不支持。您可能会看到此错误,因为您正在使用错误的撰写文件版本。
我的Docker-Compose版本:
$ docker-compose --version
docker-compose version 1.11.0, build 6de1806
这里怎么了?我的docker-compose版本不应该支持docker-compose.yml规范的v3.1(根据发行说明,确实如此)?
答案
您正在做正确的事情,它应该起作用。但是有一个漏洞在Docker-Compose 1.11.0中,未识别文件格式为3.1为有效。(3.0作品)。
Docker-Compose(1.11.1)已经有一个新的版本,其中包括BugFix:
Bug修复
修复了一个错误,其中3.1文件格式未被撰写解析器识别为有效
因此,如果您要使用文件格式3.1,我建议您升级您的Docker-Compose版本。
目前,升级Docker-Compose的最安全方法是删除并重新安装它。
rm /usr/local/bin/docker-compose
重新安装:
curl -L https://github.com/docker/compose/releases/download/1.11.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
docker-compose version 1.11.1, build 7c5d5e4
现在,文件格式不再存在错误。(我没有和你一起测试)。
docker-compose up
Starting compose_a_1
Starting compose_b_1