3
respostas

[Dúvida] Problema ao executar - docker-compose up --build

O meu fica a vida toda nisso daqui !

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Olá Matteus, tudo bem com você?

O erro apresentado host not found in upstream "web-financeiro" in api gateway.conf está sendo levantado devido a incompatibilidade entre o padrão utilizado para indicar o final de linha dos arquivos .sh do projeto e o sistema operacional Windows. Será necessário realizar a conversão do final de linhas dos arquivos .sh, para isso podemos fazer o uso do "Notepad++", que é um editor de código fonte gratuito, basta seguir os passos apresentados abaixo:

Instalação do Notepad++

  • Realize o download e a instalação do Notepad++. Basta acessar o seguinte link clicar no botão download e realizar a instalação. É uma instalação padrão, basta clicar em "Próximo"

Conversão

  • Após finalizar a instalação do Notepad++, no explorador de arquivos abra a pasta "alura-ms" que contém os arquivos do projeto
  • Nesta pasta, clique com o botão direito no arquivo "mkt-node.sh" e no menu de contexto escolha "Editar com o Notepad++"
  • Será aberto o Notepad++. Agora clique no menu de ferramentas escolhas as opções "Editar>Conversão final de linha>Converter para formato UNIX" como mostrado na imagem abaixo: Imagem contendo a apresentação do Notpad++ e a exibição do menu de ferramentas.
  • Agora, salve o arquivo "mkt-node.sh"
  • Repita os passos apresentados acima para os arquivos "front-end.sh", "financeiro-php.sh", "academico-php-web.sh", "academico-php.sh", sempre salvando após a conversão

Subida do contêiner

  • Após a conversão realizada, no terminal aberto na pasta "alura-ms" realizar Inicie o contêiner executando o comando abaixo:

    docker-compose up --build
    
  • Aguarde a inicialização. Observação: O tempo de inicialização pode ser prolongado, dependendo da velocidade da sua conexão com a internet e das configurações do seu sistema

  • Após iniciar, você pode dar continuidade seguindo os passos apresentados na aula subindo o projeto a partir do minuto 1:54

Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Bom, fiz exatamente o que você me falou. Fiz em todos os arquivos e salvei um por um

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Mas agora estou com outro problema:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Oii Matteus, tudo bem?

Essa nova mensagem de erro está indicando que a porta 8080 já está em uso em seu sistema, seja por um serviço ou um contêiner.

  • Peço que abra uma nova janela do PowerShell como administrador e execute o comando abaixo para obter o ID do container que está em execução na porta 8080.

    docker ps -f "expose=8080"
    
    • Importante: Caso o comando docker ps -f "expose=8080" retorne uma tabela vazia, isso indica que no momento não há um contêiner iniciado nessa porta. Na imagem abaixo um exemplo do retorno do comando: Imagem contendo o retorno da execução do comando anterior
  • Na tabela que será retornada, copie o valor da coluna CONTAINER ID. Execute o comando abaixo adicionando o CONTAINER ID para encerrar o container, na imagem abaixo é apresentado o exemplo de execução:

    docker kill CONTAINER ID
    

    Imagem contendo a execução do comando acima

  • Neste momento basta realizar uma nova tentativa de subida dos containers da aula, abra novamente o Docker Desktop e execute o comando docker-compose up --build dentro da pasta "alura-ms". Verifique se obterá sucesso na subida do contêiner.

Caso o erro permaneça sendo apresentado, peço que abra o PowerShell como administrador e execute o comando abaixo para verificar qual serviço está fazendo o uso da porta 8080:

netstat -a -n -o | findstr 8080

Será retornada uma tabela, nessa tabela contendo os processos que estão na porta 8080. Nessa tabela, copie o número presente na primeira linha da última coluna, ele é o número de identificação da porta, na imagem abaixo um exemplo:

Imagem contendo a exibição dos serviços em execução na porta 8080

Execute o comando abaixo para encerrar o serviço informando a identificação da porta:

taskkill /f /pid <numero_de_identificacao_da_porta>

Após executar o comando taskkill, reinicie o sistema operacional e abra novamente o Docker Desktop e execute o comando docker-compose up --build dentro da pasta "alura-ms". Verifique se obterá sucesso na subida do contêiner.

Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!