Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

host not found in upstream "web-financeiro"

api-gateway_1         | nginx: [emerg] host not found in upstream "web-financeiro" in /etc/nginx/conf.d/api-gateway.conf:5
alura-ms_api-gateway_1 exited with code 1

Estou obtendo esse erro após executar o docker-compose up --build

6 respostas

O meu esta acontecendo exatamente a mesma coisa. Essa mensagem também aparece:

not foundademico_1 | ./entrypoint.sh: 2: 
consumer-academico_1 | ./entrypoint.sh: 8: Syntax error: end of file unexpected (expecting "then")

Pela leitura da mensagem, parece que esse host "web-financeiro" precisa estar declarado no arquivo /etc/nginx/conf.d/api-gateway.conf. Não conheço a tecnologia, mas é o que eu investigaria primeiro.

solução!

Descobri a solução do caso: Pelo que eu entendi, a imagem/container do financeiro ele não ta subindo, devido ao arquivo financeiro-php.sh, você pode ver que ele não ta rodando no Docker. Nesse link explica certinho o arquivo que tem que baixar, e o passo a passo. Detalhe de como eu fiz: .Baixei desse Link .Descompactei .Copiei o apenas arquivo 'dos2unix' para a pasta "alura-ms" .Abri o terminal na pasta (Não é abrindo o arquivo, abri o terminal padrão mesmo) .E executei o comando:

dos2unix -k academico-php.sh
dos2unix -k academico-php-web.sh
dos2unix -k financeiro-php.sh
dos2unix -k front-end.sh
dos2unix -k mkt-node.sh

. E depois dele converter o arquivo rodei:

docker-compose up --build
dos2unix : O termo 'dos2unix' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa operável.
Verifique a grafia do nome ou, se um caminho tiver sido incluído, veja se o caminho está correto e tente novamente.
No linha:1 caractere:1
+ dos2unix -k academico-php.sh
+ ~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (dos2unix:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Coloquei o executável dos2unix na pasta alura-ms, mas retorna esse erro quando digito dos2unix -k academico-php.sh

No arquivo: ./ financeiro-php.sh deixa ele assim:

#!/usr/bin/env bash

if [ ! -d vendor ]; then
  composer install
fi

php index.php

Consegui após executar os comandos no wsl, porém o comando é diferente, ao invés de -k, tive que utilizar -u.

dos2unix -u academico-php.sh
dos2unix -u academico-php-web.sh
dos2unix -u financeiro-php.sh
dos2unix -u front-end.sh
dos2unix -u mkt-node.sh

Obrigado pela ajuda!