Machine: Resposta de erro do daemon: rpc error: code = 13 desc = connection error: desc = "transport: remote error: tls: bad certificate"

Criado em 20 abr. 2017  ·  28Comentários  ·  Fonte: docker/machine

Olá,

Ao seguir o guia de introdução ao cluster, estou enfrentando o problema ao ingressar no enxame local criado no virtualbox

Versões em uso

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

Aqui está o comando completo sendo executado

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

Comentários muito úteis

Funcionou para mim desta vez. Suponho que você esteja fazendo --advertise-addr com o IP e a porta que está em docker-machine ls . Você tem que usar PORT 2377 de acordo com as instruções. Então, parece funcionar.

Todos 28 comentários

Alguma atualização sobre isso?

Enfrentando o mesmo problema

Por favor, note que eu sou capaz de fazer ping desses dois vms um ao outro.

Eu tenho um mesmo problema.
Eu instalei manualmente o docker-machine , Eu tentei isso no centos 7 e no Ubuntu 16.04.

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

Por favor me ajude.

Eu tenho o mesmo problema.

Funcionou para mim desta vez. Suponho que você esteja fazendo --advertise-addr com o IP e a porta que está em docker-machine ls . Você tem que usar PORT 2377 de acordo com as instruções. Então, parece funcionar.

@lupulin , obrigado, funcionou para mim quando usei PORT 2377

@lupulin @dipuratheesan Eu tive o mesmo problema e funcionou para mim usando a porta 2377 também.

Tive o mesmo problema, 2377 parece funcionar, mas não tenho ideia do porquê.

@tstrijdhorst , na verdade, diz na documentação de introdução que a porta 2377 está reservada para unir nós ao enxame.

Nota: Obtendo um erro sobre a necessidade de usar --advertise-addr? Copie o endereço IP para myvm1 executando docker-machine ls e, em seguida, execute o comando docker swarm init novamente, usando esse IP e especificando a porta 2377 (a porta para swarm joins) com --advertise-addr. Por exemplo:

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

Sim, o mesmo aqui. Obrigado.

obrigado!

Funcionou para mim também - obrigado!

Se você usou "--advertise-addr" ao executar o comando ""docker swarm init....", então você precisa usar o sinalizador --advertise-addr ao ingressar nos nós também.

por exemplo
Nomeando o nó como gerente
docker swarm init --advertise-addr <ip>:<port>

nó de junção:
docker swarm join --token <token> --advertise-addr <ip>:<port>

Nota: IP e PORT são os mesmos em ambos os comandos acima.

2377 funcionou para mim!

O tutorial explicou que na nota sobre --advertise-addr

Obtendo um erro sobre a necessidade de usar --advertise-addr?

Copie o endereço IP para myvm1 executando docker-machine ls e execute o comando docker swarm init novamente, usando esse IP e especificando a porta 2377 (a porta para swarm joins ) com --advertise-addr

É confuso embora. O tutorial está correto, mas ao executar os comandos para inicializar o enxame do docker, um usuário vê:

$ 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: Porta 2376

Seria bom se a Máquina pudesse perceber que a mensagem gerada deveria dizer 2377, se isso for possível. Mas, eu sei que as máquinas estão, sob o capô, sendo criadas pelo VirtualBox e isso pode ser difícil de determinar.

Alterar a porta para 2377 funcionou para mim.

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

2377 funcionou - o docker poderia corrigir o 'texto de cópia' gerado para corrigir isso?

2377funcionou para mim também

alguém poderia explicar o ip?

Tenho o mesmo problema 2377 funcionou. Talvez a frase do Get Started devesse ser reformulada para torná-la mais clara.

Tive o mesmo problema e a porta 2377 funcionou para mim. É estranho, porém, porque o docker-machine ls mostra a porta 2376. Definitivamente, há um bug aqui em algum lugar.

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

remova a porta
exemplo:
docker-machine ssh myvm2 "docker swarm join \
> --token\
> 192.168.99.103:2376"

2377 é a porta de gerenciamento de enxames.
2376 é a porta do Docker Daemon.
Devemos sempre usar 2377 ou deixá-lo em branco e deixá-lo assumir o padrão

Usar a porta 2377 funcionou para mim - obrigado por este fórum 👍 🥇

A mensagem que está sendo emitida após a criação do enxame do docker não deve ser alterada da porta 2376 para 2377, há uma razão para que isso seja deixado como está?

Obrigado!

Ao unir o trabalhador ao nó do gerenciador, obtendo o seguinte erro

Resposta de erro do daemon: erro rpc: código = indisponível desc = todos os SubConns estão em TransientFailure, erro de conexão mais recente: erro de conexão: desc = transporte: handshake de autenticação falhou: x509: certificado expirou ou ainda não é válido

Resolvido: sincronização Ntp entre o gerenciador e o nó do trabalhador.

Esta página foi útil?
0 / 5 - 0 avaliações