web-dev-qa-db-fra.com

lors de l'exécution de docker-compose, j'obtiens: la version 1.38 du client est trop récente. La version maximale de l'API prise en charge est de 1,37 "

J'utilise docker compose comme suit:

version: '3.7'
services: 
  couchdb:
    image: "ibmcom/couchdb3:preview"
    container_name: couch-api-test
    ports:
      - "5984:5984"

et voici ma version docker:

+ docker version
Client:
 Version:   18.03.0-ce
 API version:   1.37
 Go version:    go1.9.4
 Git commit:    0520e24
 Built: Wed Mar 21 23:10:01 2018
 OS/Arch:   linux/AMD64
 Experimental:  false
 Orchestrator:  swarm

Server:
 Engine:
  Version:  18.03.0-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.4
  Git commit:   0520e24
  Built:    Wed Mar 21 23:08:31 2018
  OS/Arch:  linux/AMD64
  Experimental: false

et ma version docker-compose est:

docker-compose version 1.25.0, build 0a186604
docker-py version: 4.1.0
CPython version: 3.7.4

Lorsque j'exécute mon docker-compose sur mon serveur ubuntu 16, j'obtiens ceci:

client version 1.38 is too new. Maximum supported API version is 1.37", "stderr_lines": ["client version 1.38 is too new. Maximum supported API version is 1.37"

Quelqu'un peut-il faire la lumière là-dessus?

3
Learner

Appels d'API effectués par le docker-compose client sont versionnés pour garantir que les clients ne se cassent pas. Par exemple, pour créer un conteneur, il crée un POST pour:

/v1.36/containers/create?name=...

La version API utilisée pour les appels est basée sur la directive version dans le docker-compose.yml fichier. Je n'ai pas pu trouver dans la documentation la correspondance entre le format de fichier docker-compose et l'API mais je suppose que pour la version 3.7, la version de l'API est 1.38.

La version du moteur docker 18.03.0-ce est compatible avec le format de fichier de composition jusqu'à 3.6 et la version d'API 1.37 selon cette matrice de compatibilité: Versions de fichier de composition et mise à nivea

Le problème est que le client docker-compose est plus récent que le moteur et qu'il comprend le format 3.7 mais ce format est incompatible avec le moteur. Pour faire fonctionner les choses, utilisez version: '3.6' ou mettez à jour le moteur vers la version 18.06.0+

J'espère que cela t'aides.

3
b0gusb