[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
João Pedro Lima Santos
Criador João Pedro Lima Santos 10/04/2023

Boa noite professor, beleza ? Estou com o seguinte problema nesse controller e acesso a rota "/users":

Mandei o erro pelo share: https://flareapp.io/share/A7E00eqP#F60

Estou usando o mesmo banco da API, e a mesma conexão do banco com a API.... se possivel poderia me ajudar ? Não sei se a NETWORK está correto no projeto ou se o problema pode ser outro.

https://github.com/JplsMura/dashboard-ead 

https://github.com/JplsMura/api-ead

Manager Carlos Ferreira 10/04/2023

Olá, João!
Tudo bem?

O erro é porque os dados de acesso ao banco estão incorretos no arquivo .env

Ou seja, o nome do host do seu banco de está errado:
DB_HOST=

Está usando qual setup de desenvolvimento? Docker? Outro?
Vi um docker-compose.yml no seu projeto, mas não vi nenhum container de banco de dados.

Carlos Ferreira
Criador João Pedro Lima Santos 10/04/2023

Eu estou usando bando do projeto API eu coloquei no .env o nome do container que está rodando dentro do projeto API como está no link do github.
Eu preciso criar um banco aqui também ? Não é só apontar pra qual container eu quero que ele conecte ?

Eu fiquei em dúvida quanto a isso...

João Pedro Lima Santos
Manager Carlos Ferreira 10/04/2023

Não está no seu arquivo docker-compose.yml o container do banco:
https://github.com/JplsMura/dashboard-ead/blob/main/docker-compose.yml

--

Onde está rodando este banco de dados? Em outro projeto?

Você só consegue acessar outro container pelo nome se eles estiverem na mesma rede (mesmo docker-compose.yml), caso contrário, vai precisar informar o IP do container e porta.

Carlos Ferreira
Criador João Pedro Lima Santos 10/04/2023

Eu estou rodando o BD no projeto da API_EAD como era o mesmo BD a ideia era deixar lá.
E usar somente 1 BD, mas pelo visto ainda não sei como faço a conexão de dois projetos a um único container MYSQL.

Eu tinha colocado o nome do outro container aqui no .env local que estou usando, mas mesmo assim não funcionou. Tenho que fazer alguma configuração que devo fazer na network ? Tem algum link de exemplo para que eu possa fazer isso. Eu procurei mas não entendi muito bem.

João Pedro Lima Santos
Manager Carlos Ferreira 10/04/2023

Ah entendi, então você quer conectar ao banco de dados rodando em outro projeto (projeto este com Docker). Certo?

Neste caso, você pode informar no seu DB_HOST isso:
DB_HOST=http://host.docker.internal

(https://docs.docker.com/desktop/networking/)

Essa configuração aponta para fora do container, para sua máquina, e lá na sua máquina basta usar a porta que expôs o container do MySQL.

Pegou a ideia amigo?

Carlos Ferreira
Criador João Pedro Lima Santos 10/04/2023

Isso o projeto está rodando com o docker, mesmo ambiente que utilizamos em praticamente todos os projetos rodando aqui.
Essa container que está rodando é o container do projeto API EAD que vai disponibilizar os dados para o projeto front EAD em VUE e a ideia era invés de criar outro banco identico, inserir no mesmo banco da API.

Eu vou ler e ver se entendo o que está sendo proposto.

João Pedro Lima Santos
Manager Carlos Ferreira 10/04/2023

Se você tiver um container de banco de dados neste mesmo projeto, você consegue se conectar a ele com o nome do container:
DB_HOST=nome_do_container_local

Agora, se o container está em outra aplicação (seu caso), precisa usar http://host.docker.internal, isso vai apontar para a sua máquina (fora do container local), e por último, basta informar a porta que expôs o banco.

Pegou a ideia amigo?

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!