Подтвердить что ты не робот

Docker-compose up приводит к тому, что "клиент и сервер не имеют такой же версии (клиент: 1.14, server: 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

Я установил docker с apt-get install docker.io и docker-compose с

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.

4b9b3361

Ответ 1

Оформить переменную окружения COMPOSE_API_VERSION.

Я получал ERROR: client and server don't have same version (client : 1.19, server: 1.18), тогда я сделал export COMPOSE_API_VERSION=1.18 и проблема sovled!

Ответ 2

Это проблема версии 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`

Вы можете найти другую версию docker-compose на https://github.com/docker/compose/releases

В зависимости от вашей версии сервера вам нужно попробовать другую нижнюю версию docker-compose до тех пор, пока она не будет работать.

Ответ 3

Думаю, вам просто нужно использовать более новую версию Docker. Предположительно клиентская версия 1.14 используется внутри Compose.

Удалите версию apt-get и следуйте инструкциям на веб-сайте Docker, чтобы установить Docker:

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

Ответ 4

Попробуйте перезагрузить службу докеров после обновления Docker (sudo service docker restart).

У меня была очень похожая проблема, обновился Docker и продолжал работать в том же сообщении об ошибке, пока я не перезапустил службу. (См. https://serverfault.com/a/700707/295500.)

Ответ 5

Поскольку docker-compose 1.4 вы можете установить версию клиентского API, вам не нужно понижать рейтинг клиента или обновлять сервер.

Вам также не нужно устанавливать конкретную версию API, вы можете установить переменную среды COMPOSE_API_VERSION=auto, чтобы она автоматически обнаруживала версию клиента.

Ответ 6

Я пробовал много решений, но когда я использовал sudo apt-get upgrade docker-engine, я вижу сообщение, что я установил докер с другим именем docker-ce. После того, как я зафиксировал с помощью sudo apt-get upgrade docker-ce.

Ответ 7

У меня была такая же проблема на моем Mac - несколько месяцев назад я установил docker, boot2docker und docker-compose (ранее fig) через brew. После того, как я играл с докером, я почему-то оставил его. Теперь в игру вступают новые docker-toolbox и докер-машина и я "просто" хотел использовать предварительно сконфигурированный файл докеров и сказать "вверх". Я получил ошибку выше.

Я пробовал все, что нашел в сети - также вариант понижения (который мне не понравился). Наконец-то это работало, было просто установить новый docker-toolbox через homebrew cask и обновите мой docker-vm с помощью следующих команд:

docker-machine upgrade docker-dev

Где "docker-dev" - ваше docker-vm-Name в Virtualbox (запустите его, чтобы увидеть правильное имя).

Теперь докер снова работает отлично, а команда docker version выводит результат нормальной настройки.

Ответ 8

вы можете понизить версию вашей докере-компоновки, если вы установили свою сборку докеров:

pip install docker-compose

вы можете сначала удалить его:

pip uninstall docker-compose

то вы можете запустить:

pip install docker-compose==1.3.0

если вы создаете докеры, по-прежнему показываете подобную информацию, вы можете удалить ее (через pip uninstall docker-compose) и установить нижнюю версию docker-compose, например:

pip install docker-compose==1.2.0

вы можете продолжать цикл, если все еще отображаете неверную информацию.

ps: номер версии детали можно найти в https://github.com/docker/compose/releases