Machine: Respuesta de error del demonio: error rpc: código = 13 desc = error de conexión: desc = "transporte: error remoto: tls: certificado incorrecto"

Creado en 20 abr. 2017  ·  28Comentarios  ·  Fuente: docker/machine

Hola,

Mientras sigo la guía de inicio para el clúster, me enfrento al problema al unirme al enjambre local creado en virtualbox

Versiones que se utilizan

docker -v
Docker version 17.03.1-ce, build c6d412e
docker-machine -v
docker-machine version 0.10.0, build 76ed2a6
docker-compose -v
docker-compose version 1.12.0, build b31ff33
vboxmanage -v
5.1.20r114628

Aquí está el comando completo que se está ejecutando

docker<strong i="12">@myvm1</strong>:~$ docker swarm init --advertise-addr 192.168.99.103:2376
Swarm initialized: current node (e2nvv6m8fadlcrzayk0ddp14c) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join \
    --token <token-replaced> \
    192.168.99.103:2376

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

docker<strong i="13">@myvm1</strong>:~$ exit
compose $ docker-machine ssh myvm2 "docker swarm join \
> --token <token-replaced> \
> 192.168.99.103:2376"
Error response from daemon: rpc error: code = 13 desc = connection error: desc = "transport: remote error: tls: bad certificate"
exit status 1

Comentario más útil

Funcionó para mí esta vez. Supongo que está haciendo --advertise-addr con la IP y el puerto que está en docker-machine ls . Tienes que usar el PUERTO 2377 según las instrucciones. Entonces, parece funcionar.

Todos 28 comentarios

¿Alguna actualización sobre esto?

Enfrentando el mismo problema

Tenga en cuenta que puedo hacer ping desde esos dos vms entre sí.

Tengo un mismo problema.
Instalé manualmente el docker-machine , lo probé en centos 7 y ubuntu 16.04.

Docker version 17.03.1-ce, build c6d412e
docker-machine version 0.10.0, build 76ed2a6

Por favor, ayúdame.

Tengo el mismo problema.

Funcionó para mí esta vez. Supongo que está haciendo --advertise-addr con la IP y el puerto que está en docker-machine ls . Tienes que usar el PUERTO 2377 según las instrucciones. Entonces, parece funcionar.

@lupulin , gracias, funcionó para mí cuando usé PORT 2377

@lupulin @dipuratheesan Tuve el mismo problema y también me funcionó usando el puerto 2377.

Tuve el mismo problema, 2377 parece funcionar pero no tengo idea de por qué.

@tstrijdhorst en realidad dice en la documentación de inicio que el puerto 2377 está reservado para unir nodos al enjambre.

Nota: ¿Recibe un error sobre la necesidad de usar --advertise-addr? Copie la dirección IP para myvm1 ejecutando docker-machine ls, luego ejecute el comando docker swarm init nuevamente, usando esa IP y especificando el puerto 2377 (el puerto para las uniones de swarm) con --advertise-addr. Por ejemplo:

docker-machine ssh myvm1 "docker swarm init --advertise-addr 192.168.99.100:2377"

sí, lo mismo aquí. Gracias.

¡Gracias!

Trabajó para mí también, ¡gracias!

Si usó "--advertise-addr" mientras ejecutaba el comando ""docker swarm init...", entonces también necesita usar flag --advertise-addr mientras se une a los nodos.

p.ej
Nominación de nodo como administrador
docker swarm init --advertise-addr <ip>:<port>

nodo de unión:
docker swarm join --token <token> --advertise-addr <ip>:<port>

Nota: IP y PORT son iguales en los dos comandos anteriores.

¡2377 funcionó para mí!

El tutorial explicó que en la nota sobre --advertise-addr

¿Recibe un error sobre la necesidad de usar --advertise-addr?

Copie la dirección IP para myvm1 ejecutando docker-machine ls, luego ejecute el comando docker swarm init nuevamente, usando esa IP y especificando el puerto 2377 (el puerto para las uniones de swarm ) con --advertise-addr

Aunque es confuso. El tutorial es correcto, pero al ejecutar los comandos para inicializar el enjambre de la ventana acoplable, un usuario ve:

$ docker-machine ssh myvm1 "docker swarm init --advertise-addr 192.168.99.100:2376"
Swarm initialized: current node (xpjllelqsli4xk2m9f8plzzc7) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join \
    --token SWMTKN-1-2xw6b7rsyn5ou92rejukqvtayar3t9jz68eqd7y0m367psu7vf-dcdk4bd7lhashxx9ki460su7h \
    192.168.99.100:2376

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

Nota: Puerto 2376

Sería bueno si Machine pudiera darse cuenta de que el mensaje generado debería decir 2377, si eso es posible. Pero, sé que las máquinas, bajo el capó, están siendo creadas por VirtualBox y eso puede ser difícil de determinar.

Cambiar el puerto a 2377 me ha funcionado.

docker swarm join --token SWMTKN-1-RANDOMTOKEN 192.168.99.100:2377

2377 funcionó: ¿podría docker arreglar el 'texto de copia' generado para arreglar esto?

2377 también funcionó para mí

¿alguien podría explicar la ip?

Tengo el mismo problema 2377 trabajado. Tal vez la oración en el Inicio debería reformularse para que quede más clara.

Tuve el mismo problema y el puerto 2377 funcionó para mí. Sin embargo, es extraño, porque docker-machine ls muestra el puerto 2376. Definitivamente hay un error aquí en alguna parte.

NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
myvm1 - virtualbox Running tcp://192.168.99.100:2376 v17.06.2-ce
myvm2 - virtualbox Running tcp://192.168.99.101:2376 v17.06.2-ce

quitar el puerto
ejemplo:
docker-machine ssh myvm2 "docker swarm unirse \
> --token\
> 192.168.99.103:2376"

2377 es el puerto de gestión de enjambres.
2376 es el puerto Docker Daemon.
Siempre debemos usar 2377 o dejarlo en blanco y dejarlo por defecto

Usar el puerto 2377 funcionó para mí, gracias por este foro 👍 🥇

¿No debería cambiarse el mensaje que se emite después de la creación del enjambre docker del puerto 2376 al 2377? ¿Hay algún motivo por el que se deje como está?

¡Gracias!

Mientras se une al trabajador al nodo Administrador, se obtiene el siguiente error

Respuesta de error del daemon: error rpc: código = no disponible desc = todos los SubConn están en TransientFailure, último error de conexión: error de conexión: desc = transporte: error en el protocolo de autenticación: x509: el certificado ha caducado o aún no es válido

Resuelto: sincronización de Ntp entre el administrador y el nodo de trabajo.

¿Fue útil esta página
0 / 5 - 0 calificaciones