Подключение из загрузочного приложения Spring, запущенного в Google Cloud Run, к Cloudsql без GCP Starter - PullRequest
0 голосов
/ 03 октября 2019

У меня запущено загрузочное приложение Spring в Google Cloud Run, и я хочу подключиться к экземпляру postgres, работающему в Google Cloudsql. Я могу подключиться с помощью стартового проекта 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 автоматически создается облачный прокси. Так почему же это не работает?

Спасибо.

1 Ответ

0 голосов
/ 04 октября 2019

Это не работает, потому что Java не поддерживает доменные сокеты Unix. Spring Cloud GCP обходит это, используя Cloud SQL JDBC Socket Factory .

Вы можете использовать Socket Factory напрямую, добавив в него свой pom (и обновив свой URL, как указано в README).

...