首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >google-cloud-run quarkus google-cloud-sql

google-cloud-run quarkus google-cloud-sql
EN

Stack Overflow用户
提问于 2020-06-13 18:32:10
回答 2查看 440关注 0票数 1

我在cloud run下部署了一个本地quarkus应用程序。此应用程序需要连接到云sql postgresql数据库。在配置面板的cloud run上,我创建了一个Cloud SQL connections (db-instance-name eq.cloud sql)和Quarkus上的一些变量,如DB_USER,DB_PASSWORD,DB_NAME,我定义属性如下:

代码语言:javascript
复制
quarkus.datasource.jdbc.url=jdbc:postgresql:///${DBNAME}:5432
quarkus.datasource.driver=org.postgresql.Driver
quarkus.datasource.username=${DB_USER}
quarkus.datasource.password=${DB_PASSWORD}

我的pom.xml

代码语言:javascript
复制
<dependency>
    <groupId>io.quarkus</groupId>
    <artifactId>quarkus-hibernate-orm-panache</artifactId>
</dependency>   
<dependency>
    <groupId>io.quarkus</groupId>
    <artifactId>quarkus-jdbc-postgresql</artifactId>
</dependency>    
<dependency>
    <groupId>com.google.cloud.sql</groupId>
    <artifactId>postgres-socket-factory</artifactId>
    <version>1.0.16</version>
</dependency>    

云运行开始时,出现异常:

代码语言:javascript
复制
WARN [io.agr.pool] (Agroal_18109070341) Datasource '<default>': Connection to :5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections

我不得不说,cloud run是通过cloud build部署的。

你能帮我解决这个问题吗?谢谢

EN

回答 2

Stack Overflow用户

发布于 2020-06-13 21:57:22

您需要使用如下所示的unix_socket文件

代码语言:javascript
复制
postgres://user:password@/databasename?unix_sock=/cloudsql/projectshortcod:us-central1:pg-instance-name

您可能需要将其放在库的URL域中,但要确保库支持unix_socket数据库。

票数 1
EN

Stack Overflow用户

发布于 2021-01-18 10:19:26

我没有使用unix_socket,而是简单地使用quarkus.datasource.jdbc.url=jdbc:mysql:///DB-NAME?ipTypes=PRIVATE&cloudSqlInstance=PROJECT-NAME:REGION:demo&socketFactory=com.google.cloud.sql.mysql.SocketFactory (以及quarkus.datasource.username=quarkus.datasource.password=,一如既往),让它工作起来(对于Postgres,而不是Postgres;但应该是类似的)。

?ipTypes=PRIVATE&是从GCP内部的to connect to a Cloud SQL with only a private instead of a public IP;如果你想连接到一个公共IP,例如从家里或公司的开发人员机器上,省略它。

最棘手的部分不是这么多,而是从运行在AppEngine标准上的Quarkus服务工作的to set up all the required pre-requisites on GCP

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62358501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档