2
respostas

UnhandledPromiseRejectionWarning: MongoError: failed to connect to server

Olá, muito boa tarde!

Relacionado ao curso de containers, segui todos os passos da aula e estava tudo indo muito bem.

Ao executar o comando " docker-compose build ", as aplicações iniciam com sucesso, exceto pelo Mongo, o qual imprime o seguinte erro (linha 188 do link do log ao final deste post):


UnhandledPromiseRejectionWarning: MongoError: failed to connect to server


Para fins de conclusão do curso, até que é o de menos (a página html e as iterações de balanceamento de carga do nginx responderam conforme a aula), no entanto, os livros não são carregados -- exibe mensagem de sucesso ao digitar no navegador 0.0.0.0/seed, porém não carrega os livros e suas respectivas imagens.

Portanto, só fiquei com esta issue no mongo.


Link para o log completo no meu github:

https://github.com/alexandremot/alura/blob/master/docker/logs/erro-mongo.logs

2 respostas

Olá Alexandre, tudo bem? Bem estranho esse erro, pode ser alguma coisa de indentação, vi que não está o mesmo padrão em todas as linhas, então tenta usando o seguinte código:

version: '3'
services:
  nginx:
    build:
      dockerfile: ./docker/nginx.dockerfile
      context: .
    image: alexandremot/nginx
    container_name: nginx
    ports:
      - "80:80"
    networks:
      - production-network
    depends_on:
      - "node1"
      - "node2"
      - "node3"

  mongodb:
    image: mongo
    networks:
      - production-network

  node1:
    build: 
      dockerfile: ./docker/alura-books.dockerfile
      context: .
    image: alexandremot/alura-books
    container_name: alura-books-1
    ports:
      - "3000"
    networks: 
      - production-network
    depends_on:
      - "mongodb"

  node2:
    build: 
      dockerfile: ./docker/alura-books.dockerfile
      context: .
    image: alexandremot/alura-books
    container_name: alura-books-2
    ports:
      - "3000"
    networks: 
      - production-network
    depends_on:
      - "mongodb"

  node3:
    build: 
      dockerfile: ./docker/alura-books.dockerfile
      context: .
    image: alexandremot/alura-books
    container_name: alura-books-3
    ports:
      - "3000"
    networks: 
      - production-network
    depends_on:
      - "mongodb"

networks:
  production-network:
    driver: bridge

Remova todos os containers criados anteriormente com o comando docker-compose down.

E fala pra gente qual foi o resultado!

olá, Jonilson. Muito obrigado pelo rápido retorno. Vou testar aqui e lhes informo. Abraços! :-)