1
resposta

Conexão mongo

Bom dia pessoal,

Configurei o arquivo yml conforme a vídeo aula, mas na hora de subir tudo, o banco mongo não está conectando conforme o log abaixo:

alurabooks  | Server initialiazed on port 3000
alurabooks  | 
alurabooks  |  Mongoose! Disconnected from mongodb://meu-mongo:27017/alura-books
alurabooks  | 
alurabooks  |  Mongoose! Connection error: MongoError: failed to connect to server [meu-mongo:27017] on first connect [MongoError: connect ECONNREFUSED 172.19.0.2:27017]
alurabooks  | (node:22) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): MongoError: failed to connect to server [meu-mongo:27017] on first connect [MongoError: connect ECONNREFUSED 172.19.0.2:27017]
alurabooks  | (node:22) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Eu deixei setado 3000:3000 e também coloquei 8080:3000 mas o banco não consegue se conectar, consigo acessar apenas a página.

Alguém consegue dar um help?

1 resposta

Oi Nícolas, tudo bem?

Desculpe a demora em retornar. Vi que você já finalizou o curso, que ótimo! Mas irei dar umas dicas do que pode ter acontecido.

Pelo log que você compartilhou, parece que o banco de dados MongoDB não está conseguindo se conectar. O erro "ECONNREFUSED" indica que a conexão foi recusada. Isso pode acontecer por várias razões, como a porta do banco de dados não estar aberta ou o endereço IP do banco de dados estar incorreto.

Uma possível solução é verificar se o serviço do MongoDB está sendo executado corretamente. Você pode tentar reiniciar o serviço e verificar se o problema persiste. Além disso, verifique se a porta 27017, que é a porta padrão do MongoDB, está aberta e acessível.

Outra coisa que você pode fazer é verificar se o endereço IP do banco de dados está correto. Pode ser que o endereço IP do contêiner do MongoDB tenha mudado e, por isso, a conexão esteja falhando. Você pode verificar o endereço IP do contêiner usando o comando docker inspect meu-mongo e verificar se ele corresponde ao endereço IP configurado em seu arquivo yml.

Se nenhuma dessas soluções funcionar, pode ser necessário revisar as configurações do seu arquivo yml e garantir que tudo esteja configurado corretamente. Certifique-se de que as portas estejam mapeadas corretamente e que o nome do serviço e do contêiner estejam corretos.

Espero que essas sugestões possam te ajudar.

Um abraço e bons estudos.