Olá Rayane!
Pelo que você descreveu e pelas informações do terminal, parece que temos dois problemas aqui. O primeiro é que o seu container não está rodando porque está faltando o script de inicialização no package.json
. O segundo problema é que, mesmo que o script estivesse correto, parece que a porta não está sendo exposta corretamente.
Para o primeiro problema, você precisa garantir que o seu package.json
tenha um script start
definido. Isso geralmente se parece com algo assim:
"scripts": {
"start": "node seuArquivoDeEntrada.js"
}
Substitua seuArquivoDeEntrada.js
pelo nome do arquivo que inicia sua aplicação Node.js.
Para o segundo problema, a mensagem de erro "Connection refused" ao tentar acessar localhost:8080
indica que não há nada rodando nessa porta. Isso pode estar acontecendo porque o container não está rodando devido ao erro anterior ou porque a porta não está sendo exposta corretamente.
Quando você executa o comando docker run
, você está mapeando a porta 8080 do host para a porta 3000 do container. Certifique-se de que seu aplicativo Node.js dentro do container esteja configurado para ouvir na porta 3000. Se estiver ouvindo em uma porta diferente, você precisa ajustar o mapeamento de portas no comando docker run
.
Depois de corrigir o package.json
, tente rodar o container novamente com o comando docker run
, certificando-se de que o mapeamento de portas está correto e que seu aplicativo está configurado para ouvir na porta interna que você está mapeando (neste caso, a porta 3000).
Espero ter ajudado e bons estudos!