4
respostas

Executo o /seed mas os livros não aparecem

meus containers:
1ac445e571c5        douglasq/alura-books:cap05   "npm start"              6 minutes ago       Up 5 minutes        0.0.0.0:8080->3000/tcp   busy_wu
f35b9e56e1c9        mongo                        "docker-entrypoint.s…"   6 minutes ago       Up 6 minutes        27017/tcp                meu-mongo

--

Minhas redes:

NETWORK ID          NAME                DRIVER              SCOPE
8f6912f40a6b        bridge              bridge              local
bf2e69e81cdb        host                host                local
9b4836adf02a        minha-rede          bridge              local
cbfeefbe416a        none                null                local
b8c5404fb9c4        prod                bridge              local

--

Minhas imagens:

REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE
mongo                  latest              ba0c2ff8d362        4 weeks ago         492MB
douglasq/alura-books   cap05               ebff169e5013        3 years ago         691MB

--

Comandos do deploy, executados iguais ao do curso:

 docker run -d --name meu-mongo --network minha-rede mongo

docker run --network minha-rede -d -p 8080:3000 douglasq/alura-books:cap05

--

Quando eu executo no browser o http://IP:8080/seed a mensagem de que os livros foram carregados aparece, porem as imagens não aparecem no home http://IP:8080.

4 respostas

O mesmo está acontecendo aqui, diz que não foi possível carregar o arquivo de estilos CSS, pois acho que ao referenciá-lo no HTML não foi utilizado no formato:

<link rel="stylesheet" href="estilos.css">

No meu caso ele aceita o /seed, mas ao voltar para o home não aparece as imagens dos livros fica do mesmo jeito.

Eu apenas baixei a imagem pronta e subi os containers, não sei se preciso editar algo devido alguma atualização ou algo do tipo.

Consegui executar, no meu caso o problema foi que a minha aplicação node não tinha conseguido conectar ao banco.

Uma dica que eu dou é vocês usarem o comando:

docker logs <ID_CONTAINER_NODEJS>

Dessa forma vocês terão uma ideia do que está acontecendo dentro do app em nodejs.

O problema foi que houve uma atualização com o mongoose e o código da alura-books está quebrando. Nem se conecta com o banco.

Para resolver esse problema, você precisa gerar uma nova imagem com o bugfix:

  • baixar o código original e editar o arquivo ./config/database.js (link na descrição da aula) ou aqui

  • Nele, troque essa linha

    mongoose.connect(uri);

    por essa

    mongoose.connect(uri, { useNewUrlParser: true });
  • agora gere uma nova imagem

    docker build \
      -f alura-books.dockerfile \
      -t <seu_nome>/alura-books \
      .
  • execute a nova imagem

    docker run \
      -p 8080:3000 \
      -d \
      --name alura-books \
      --network minha-rede \
      <seu_nome>/alura-books

PS:

  • Qualquer problema nesses códigos que eu mandei me avisem, mas podem voltar nas aulas anteriores que ele ensina como gerar uma imagem tbm.
  • Talvez dê problema com o nome dos containers (nomes duplicados), considere apagar o container original (que tem o bug)
    docker rm alura-books -f
  • :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software