Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Não estou conseguindo fazer a Conexão entre o aplicativo e o Railways através do "application-prd.yml" #12

Open
douglashsoares opened this issue Jul 25, 2024 · 2 comments

Comments

@douglashsoares
Copy link

Boa noite, na aula de na aula "provisionando o PostgreSQL(Railway)..." tem uma parte onde o Venilton cria um Resource chamado "application-prd.yml" e passa um código dentro dele, até ai tudo bem, mas o meu postgre parece que ouve novas atualizações e esta bem diferente do dele. Então ao passar as "Enviroment Variables", está dando este erro:

Error:

Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided)

O meu Postgre está vindo com mais variáveis do que a do Venilton, não sei se é por isso que está dando o erro:

porstgre meu
postgredele

Então o meu Enviroment Variable ficou assim:

EnviromentVariable

yml

Quando eu tiro o "SPRING_PROFILES_ACTIVE=prd" para de dar erro, mas a conexão com o Railways continua falhando.

imagem_2024-07-24_222004166

Está acontecendo isso com mais alguém?

@felipelacerda717
Copy link

Boa noite, Douglas!
Estava com o mesmo problema que você, porém, consegui uma solução de uma maneira diferente, vamos aos passos:
Pelo que percebi, você fez com o gradle, o meu projeto foi feito com Maven, vou deixar o meu projeto público para você dar uma olhada, a síntese não muda muito, apenas como as dependências são declaradas que difere entre Gradle para POM.

https://github.com/felipelacerda717/API

Com o meu projeto em mãos, vamos a etapa do Railway, primeiramente, vou utilizar outro banco de dados relacional, faça um deploy de um MYSQL pelo Railway, após isso, clique no novo banco de dados, vá para Variables, e copie e cole os dados escondidos depois do sinal de igual (=) nesse modelo:

DB_HOST=
DB_PORT=
DB_NAME=
DB_USERNAME=
DB_PASSWORD=
PROFILES_APP=prod

(lembrando que o prod é uma application properties do meu projeto)

Quando terminar, faça o deploy da sua aplicação no Railway, ou utilize a minha como exemplo; após subi-la, clique nela, vá para Variables e procure por RAW EDITOR, cole o código e aplique e confirme as mudanças na área de trabalho do Railway.

Verifique se as tabelas foram criadas corretamente.
image

@dbengp
Copy link

dbengp commented Jan 9, 2025

Boa noite, na aula de na aula "provisionando o PostgreSQL(Railway)..." tem uma parte onde o Venilton cria um Resource chamado "application-prd.yml" e passa um código dentro dele, até ai tudo bem, mas o meu postgre parece que ouve novas atualizações e esta bem diferente do dele. Então ao passar as "Enviroment Variables", está dando este erro:

Error:

Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided)

O meu Postgre está vindo com mais variáveis do que a do Venilton, não sei se é por isso que está dando o erro:

porstgre meu postgredele

Então o meu Enviroment Variable ficou assim:

EnviromentVariable

yml

Quando eu tiro o "SPRING_PROFILES_ACTIVE=prd" para de dar erro, mas a conexão com o Railways continua falhando.

imagem_2024-07-24_222004166

Está acontecendo isso com mais alguém?

Boa tarde! você está tentando a conexão com uma base que está interna a rede na qual o docker com uma imagem do postgresql foi criada, por tanto privada a Cloud da Railway, altere os valores das variaveis de ambiente para as que fazem referencia a conexão publica desse banco, clicando em "Connect", depois selecione a aba "Public Network", no label "Connection URL" tem um campo com a connection string desejada, você clica em "show" atualiza os valores das variaveis de ambiente do profile referente a sua aplicação. E claro que esse passo demonstrado pelo Venilton é opcional, pois pelo que entendi o exercício em questão é provisionar um banco e uma aplicação que usa esse banco na nuvem do railway; a propósito antes de subir para o github retorna os valores da variável de ambiente para os da conexão interna.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants