Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
21
respostas

Error response from daemon

Segui todos os passos mas apresentou erro, segue abaixo:

docker@vm1:~$ docker service create -p 8080:3000 aluracursos/barbearia

qy9hm3ljc8mlgwgs0b16zgyo2

overall progress: 0 out of 1 tasks

1/1: preparing [=================================> ]

Error response from daemon: rpc error: code = DeadlineExceeded desc = context deadline exceeded

alguém que passou pelo mesmo e saiba a solução?

21 respostas

Olá Wanderson, tudo bem? Você poderia tentar destruir e criar novamente todo o Swarm? Isso pode resolver! Tenta isso e fala pra gente o resultado!

Olá, Jonilson, td joia e vc?

Então deletei todo o swarm e refiz todo o processo, mas novamente apresentou o mesmo erro na hora da criação do serviço pelo terminal do Manager Swarm.

Fala Wanderson, tranquilo?

Tem como você mostrar pra gente as saídas dos comandos docker node ls e docker info?

Boa noite, Daniel.

docker@vm1:~$ docker node ls

Error response from daemon: rpc error: code = DeadlineExceeded desc = context deadline exceeded


docker@vm1:~$ docker info

Client:

Debug Mode: false

Server:

Containers: 0

Running: 0

Paused: 0

Stopped: 0

Images: 0

Server Version: 19.03.5

Storage Driver: overlay2

Backing Filesystem: extfs

Supports d_type: true

Native Overlay Diff: true

Logging Driver: json-file

Cgroup Driver: cgroupfs

Plugins:

Volume: local

Network: bridge host ipvlan macvlan null overlay

Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog

Swarm: active

NodeID: 8bjcnf8npaqsmtkyb4c7ke07l

Error: rpc error: code = DeadlineExceeded desc = context deadline exceeded

Is Manager: true

Node Address: 192.168.99.104

Manager Addresses:

192.168.99.104:2377

Runtimes: runc

Default Runtime: runc

Init Binary: docker-init

containerd version: b34a5c8af56e510852c35414db4c1f4fa6172339

runc version: 3e425f80a8c931f88e6d94a8c831b9d5aa481657

init version: fec3683

Security Options:

seccomp

Profile: default

Kernel Version: 4.14.154-boot2docker

Operating System: Boot2Docker 19.03.5 (TCL 10.1)

OSType: linux

Architecture: x86_64

CPUs: 1

Total Memory: 989.5MiB

Name: vm1

ID: NIYX:GKED:MFNL:DMQV:YQ64:LOSS:7IXC:NQFS:VTNU:FX3B:Y377:BMA6

Docker Root Dir: /mnt/sda1/var/lib/docker

Debug Mode: false

Registry: https://index.docker.io/v1/

Labels:

provider=virtualbox

Experimental: false

Insecure Registries:

127.0.0.0/8

Live Restore Enabled: false

Product License: Community Engine

Ao executar o comando docker swarm join nos outros nós, eles foram adicionados sem problemas?

Foram adicionados sim.

<2b63xg87yrurall09zmc25qsjfsdtiwswig1qbj-5qjh6npexmfm9x7nvfizwowz0 192.168.99.104:2377

This node joined a swarm as a worker.


<xg87yrurall09zmc25qsjfsdtiwswig1qbj-5qjh6npexmfm9x7nvfizwowz0 192.168.99.104:2377

This node joined a swarm as a worker.

Tenta fazer o seguinte:

Dentro da sua vm1, tente os seguintes comandos:

sudo apt-get update

sudo apt-get install firewalld

sudo firewall-cmd --add-port=2377/tcp --permanent

sudo firewall-cmd --reload

sudo systemctl restart docker

Depois desses comandos, tente novamente.

Não reconhece os comandos

docker@vm1:~$ sudo apt-get update

sudo: apt-get: command not found


Nem subindo para root

docker@vm1:~$ sudo su

root@vm1:/home/docker# apt-get update

bash: apt-get: command not found

Qual comando você executou para a criação da vm?

Qual a saída do comando docker-machine ls?

para criação: docker-machine create -d virtualbox vm2


Drito@DRITO-R7 MINGW64 ~

$ docker-machine ls

NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS

vm1 - virtualbox Running tcp://192.168.99.104:2376 v19.03.5

vm2 - virtualbox Running tcp://192.168.99.105:2376 v19.03.5

vm3 - virtualbox Running tcp://192.168.99.106:2376 v19.03.5

Dentro de alguma de suas vm's, execute o comando cat /etc/os-release.

Qual a saída?

docker@vm1:~$ cat /etc/os-release
NAME=Boot2Docker
VERSION=19.03.5
ID=boot2docker
ID_LIKE=tcl
VERSION_ID=19.03.5
PRETTY_NAME="Boot2Docker 19.03.5 (TCL 10.1)"
ANSI_COLOR="1;34"
HOME_URL="https://github.com/boot2docker/boot2docker"
SUPPORT_URL="https://blog.docker.com/2016/11/introducing-docker-community-directory-docker-community-slack/"
BUG_REPORT_URL="https://github.com/boot2docker/boot2docker/issues"

Realmente estranho, parece ser algo na sua rede.

Qual comando você utilizou para a criação do swarm?

docker swarm init --advertise-addr 192.168.99.104

Tenta remover a pasta /var/lib/docker/swarm e reiniciar o docker depois com o comando sudo /etc/init.d/docker restart. Faça isso em todos os nós managers e depois fala pra gente o resultado.

Não deu certo, acontece a mesma coisa.

Vou deletar as VMS e tentar de novo amanhã, se não der certo tento em outro PC.

Por favar me passa um link com a melhor maneira de instalar a docker machine atualmente.

Atualmente a melhor maneira é essa aqui.

Ali diz pra instalar o docker primeiro, mas pra rodar a docker machine e criar VMs pelo virtualbox eu tive que desabilitar o Hyper-V. E ao desabilitar o Hyper-V, o docker desktop não roda mais. Será que isso interfere?

Eu fiz minha instalação atual da docker machine pelo menos link que vc mandou agora, e estou usando o Git Bash conforme eles indicam, pq no meu CMD ou Power Shell não reconhece.

Pode desabilitar o Hyper-V mesmo. O Docker só será usado dentro das máquinas virtuais.

solução!

Fala, Daniel. Acabei não querendo perder mais tempo e fiz todo o processo do zero no meu computador do trabalho remotamente, lá deu certo. Até pq o docker-machine é só pra estudos mesmo né, no ambiente real usaremos máquinas com docker instalado pra trabalhar com o swarm, correto?

Opa Wanderson, beleza?

Que bom que conseguiu resolver :)

A ideia da docker machine nesse curso é apenas para fins didáticos mesmo.

No mundo real, há a possibilidade de usar máquinas tradicionais com o Docker e/ou máquinas em servidores de cloud, como a AWS por exemplo. (Esses servidores podem ser provisionados com a docker machine também).