docker-compose up导致“客户端和服务器不具有相同的版本(客户端:1.14,服务器:1.12)”错误,但客户端和服务器具有相同的版本

docker version打印:

 Client version: 1.0.1 Client API version: 1.12 Go version (client): go1.2.1 Git commit (client): 990021a Server version: 1.0.1 Server API version: 1.12 Go version (server): go1.2.1 Git commit (server): 990021a 

docker-compose --version打印:

 docker-compose 1.2.0 

我使用apt-get install docker.ioapt-get install docker.io -compose apt-get install docker.io

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

我使用Ubuntu 14.04 x64。

Solutions Collecting From Web of "docker-compose up导致“客户端和服务器不具有相同的版本(客户端:1.14,服务器:1.12)”错误,但客户端和服务器具有相同的版本"

检出环境变量COMPOSE_API_VERSION 。

我得到ERROR: client and server don't have same version (client : 1.19, server: 1.18) ,然后我export COMPOSE_API_VERSION=1.18和问题解决!

这是docker-compose使用的docker API版本高于docker守护进程监听服务的问题。

最简单的方法就是使用docker-compose的旧版本。

这是我的例子,但版本不匹配:

 $ docker-compose up client and server don't have same version (client : 1.18, server: 1.17) 

为了解决这个问题,我不得不使用下面的命令安装一个较低版本的docker-compose(1.2版本而不是最新的1.3版本)

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

你可以在https://github.com/docker/compose/releases找到不同版本的docker-compose

根据你的服务器版本,你需要尝试不同的更低版本的docker-compose,直到工作。

我想你只需要使用更新版本的Docker。 据推测,客户端版本1.14在Compose内部使用。

卸载apt-get版本并按照Docker网站上的说明安装Docker:

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

尝试升级Docker( sudo service docker restart )后重新启动docker服务。

我有一个非常类似的问题,升级了Docker,并一直运行到相同的错误消息,直到我重新启动服务。 (请参阅https://serverfault.com/a/700707/295500 。)

由于docker-compose 1.4可以设置客户端API版本,所以不必降级客户端或升级服务器。

您不必设置特定的API版本,您可以设置环境变量COMPOSE_API_VERSION=auto以使其自动检测客户端版本。

我在我的Mac上遇到了同样的问题 – 几个月前,我通过brew安装了docker,boot2docker和docker-compose(以前称为fig)。 在我和码头玩了一阵之后,我因为某种原因离开了它。 现在,新的docker-toolbox和docker-machine开始发挥作用,我“只是”想使用一个预先配置的docker文件并说“up”。 我得到了上面的错误。

我尝试了我在网上找到的所有东西 – 也是降级选项(这对我来说并不合适)。 事情终于奏效了,只是通过自制酒桶安装新的docker-toolbox ,并用以下命令升级我的docker-vm:

docker-machine upgrade docker-dev

其中“docker-dev”是您在Virtualbox中的docker-vm-Name(启动它,查看正确的名称)。

现在docker再次正常运行,docker docker version命令带来了正常设置的输出。

你可以降级你的docker-compose版本,如果你已经安装了你的docker-compose:

pip install docker-compose

你可以先卸载它:

pip uninstall docker-compose

那么,你可以运行:

pip install docker-compose==1.3.0

如果你使用docker-compose,仍然显示类似的信息,你可以卸载它(通过pip uninstall docker-compose ),并安装一个较低版本的docker-compose,比如:

pip install docker-compose==1.2.0

如果仍然显示错误的信息,你可以继续循环。

ps:详细的版本号可以在https://github.com/docker/compose/releases找到

我尝试了很多解决方案,但是当我使用sudo apt-get upgrade docker-engine我看到消息说我已经安装了不同名称的docker-ce 。 在我用sudo apt-get upgrade docker-ce修复之后。