Olá.
Como outras pessoas relataram no fórum, também tive erro de conexão com o mongodb ao rodar o docker compose up
(na minha versão do docker, o comando é assim).
Consultando o ChatGPT, a sugestão foi adicionar um comando de dependência para o alurabooks, de modo que o alurabooks fosse iniciado somente após o mongodb estar em funcionamento. Acredito que em alguns casos o mongodb ainda não terminou de ser iniciado e por isso dá erro de conexão.
Meu arquivo compose.yaml (que é a nomenclatura usada pelo Docker na versão atual) ficou assim:
services:
mongodb:
image: mongo:4.4.6
container_name: meu-mongo
networks:
- compose-bridge
alurabooks:
image: aluradocker/alura-books:1.0
container_name: alurabooks
networks:
- compose-bridge
ports:
- 3000:3000
depends_on:
- mongodb
networks:
compose-bridge:
driver: bridge