簡體   English   中英

從在 Google Cloud Run 上運行的 Spring 啟動應用程序連接到沒有 GCP 啟動器的 Cloudsql

[英]Connect from Spring boot app running on Google Cloud Run to a Cloudsql without GCP starter

我有一個在 Google Cloud Run 上運行的 Spring 啟動應用程序,我想連接到在 Google Cloudsql 上運行的 postgres 實例。 我可以使用 Spring Cloud GCP 入門項目進行連接。

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-gcp-starter-sql-postgresql</artifactId>
</dependency>

但我不想添加這個依賴。

在創建雲代理后,我可以使用 postgressql 插件並指定spring.datasource.url=***從本地應用程序連接。

但是,當我在使用gcloud beta run deploy --add-cloudsql-instances <INSTANCE-ID>后嘗試從雲運行中執行相同操作時,它不起作用。 根據https://cloud.google.com/run/docs/configuring/connect-cloudsql--add-cloudsql-instances自動創建雲代理。 那么為什么它不起作用呢?

謝謝。

這不起作用,因為 Java 不支持 Unix 域 sockets。 Spring Cloud GCP 通過使用Cloud SQL JDBC Socket Factory來規避此問題。

您可以通過添加您的 pom 直接使用 Socket Factory(並按照自述文件中的說明更新您的 URL)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM