library - Docker-Respuesta de error de daemon: el cliente es más nuevo que el servidor
docker tag (6)
Aparentemente, este error se debe a que docker-machine
"quedando dormida". Aquí está el comando mágico que lo resuelve:
$ docker-machine restart default
O reemplace el default
por el nombre de su máquina. El resultado es:
$ docker-machine restart default
Restarting "default"...
Restarted machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
Como se sugirió, es posible que deba:
$ docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://....."
export DOCKER_CERT_PATH=".../.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval $(docker-machine env default)
Y entonces finalmente ejecutas ese comando:
$ eval $(docker-machine env default)
A partir de ahora debería funcionar.
En ubibu distrib ocurre después de una actualización apt, si docker se ejecuta como un servicio. El cliente se actualiza pero la versión anterior del servidor aún se está ejecutando.
En este caso, solo haz un:
sudo service docker restart
Si actualiza su cliente de docker, no podrá usar máquinas virtuales viejas de docker-machine. De hecho, puede forzar una actualización con la actualización docker-machine upgrade vm-name
, pero si está trabajando con otras distribuciones (excepto boot2docker) como host de docker como coreos, atomic, rancheros, puede fallar.
Estoy usando Carina para administrar más de una versión de cliente de Docker.
solo instale con $ curl -sL https://download.getcarina.com/dvm/latest/install.sh | sh
$ curl -sL https://download.getcarina.com/dvm/latest/install.sh | sh
(instalación de Linux y mac) y ejecute dvm ls
para enumerar las versiones instaladas, dvm install 1.9.0
para instalar las versiones y dvm use 1.8.1
para cambiar su versión de cliente.
Muy fácil y poderoso. =)
Atención, para su seguridad, siempre eche un vistazo a las secuencias de comandos descargadas de Internet antes de ejecutarlas.
Espero eso ayude
Si alguien obtiene este error, pero no está utilizando docker-machine
, hay otra forma de resolver el problema especificando una versión anterior de API en una variable de entorno en el lado del cliente:
export DOCKER_API_VERSION=<version>
por ejemplo:
export DOCKER_API_VERSION=1.19
y reintentando el comando del docker
.
Tuve el mismo problema con 1.10.0-rc4, y resultó que boot2docker no se actualizó correctamente al instalar una nueva Docker Toolbox. Tuve que eliminar boot2docker manualmente:
sudo rm -rf /usr/local/share/boot2docker
También puede eliminar el resto de la caja de herramientas:
sudo rm -rf /usr/local/bin/docker*
sudo rm -rf /Applications/Docker
Y finalmente instale Docker Toolbox de la versión deseada.
Consulte la secuencia de comandos de desinstalación oficial en GitHub para OS X aquí.
docker-machine upgrade <your-machine>
hará el truco Esto puede ocurrir, como lo hizo por mí, incluso si no está utilizando RC y su máquina fue creada recientemente. Sería debido a un problema de caché ISO. El error se comenta en este hilo .
Si el cliente de Docker es 1.9.x y el servidor ejecuta Docker 1.8.x, se observa el mensaje de error.