google-cloud-run quarkus google-cloud-sql

问题描述 投票:1回答:1

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

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

<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>    

[开始运行云时,发生了异常:

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

我不得不说云运行是由云构建部署的。

您能帮我解决这个问题吗...谢谢

google-cloud-sql quarkus google-cloud-run quarkus-panache
1个回答
0
投票

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

postgres://user:password@/databasename?unix_sock=/cloudsql/projectshortcod:us-central1:pg-instance-name

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

© www.soinside.com 2019 - 2024. All rights reserved.