如何修复docker-compose的版本错误匹配

这是一个非常类似的问题。 但问题是有人说docker版本太旧了,有人说docker版本不够老。 我的问题是,我检查了我的docker和docker组成的版本后,我找不到版本1.21这是错误报告。 我在哪里可以find它?

我正在尝试运行Crystalnix / omaha-server 。

我遵循了以下步骤:

$ sudo apt-get update $ sudo apt-get install docker.io $ sudo apt-get install python-paver python-pip $ sudo pip install -U docker-compose $ git clone https://github.com/Crystalnix/omaha-server.git $ cd omaha-server $ sudo paver up_local_dev_server 

然后我收到错误:
docker-compose -f docker-compose.dev.yml -p dev up -d db ERROR: client and server don't have same version (client : 1.21, server: 1.18)

从Srini Koganti的答案中 ,我发现这个错误可能是由docker-compose使用的docker docker API version used by docker-compose being higher than that that of docker daemon listening to serve.

然后我检查:

 docker-compose --version docker-compose version 1.13.0, build 1719ceb 

也:

 docker version Client version: 1.6.2 Client API version: 1.18 Go version (client): go1.2.1 Git commit (client): 7c8fca2 OS/Arch (client): linux/amd64 

我可以发现1.21版本不通,那么这个问题的原因是什么? 以及如何解决它?

你必须升级你的Docker版本,因为你有一个真正的旧版本。

安装最后一个Docker Engine版本的最简单方法是使用Docker的官方安装脚本。

要做到这一点,你只需要执行这个命令,它将检索和执行脚本。

wget -qO- https://get.docker.com/ | sh