Облачный запуск не удалось запустить из-за недопустимой конфигурации SQL Cloud

Я следил за документацией, чтобы включить SQL Cloud из облака. Но согласно документации:

Теперь ваши экземпляры контейнеров могут подключаться к Cloud SQL через прокси-сервер Cloud SQL, который автоматически активируется и настраивается. В своем коде вы можете подключиться к экземпляру Cloud SQL, используя сокет /cloudsql/[CONNECTION NAME] unix.

Что означает последняя фраза? Нужно ли подключаться, используя обычную строку подключения, например: jdbc:postgresql://localhost:5432/${DATABASE_NAME}

В моем случае это мешает запуску контейнера. org.postgresql.util.PSQLException: подключение к локальному хосту: 5432 отклонено. Убедитесь, что имя хоста и порт указаны правильно, а постмастер принимает соединения TCP/IP.

Также я использую следующую команду, чтобы «добавить» облако SQL: gcloud beta run deploy --image gcr.io/[PROJECT_ID/[IMAGE_NAME]:[TAG] --add-cloudsql-instances [CONNECTION_NAME]

Создание приборной панели для анализа данных на GCP - часть I
Создание приборной панели для анализа данных на GCP - часть I
Недавно я столкнулся с интересной бизнес-задачей - визуализацией сбоев в цепочке поставок лекарств, которую могут просматривать врачи и...
0
0
578
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Пример оператора подключения:

import pymysql
connection = pymysql.connect(unix_socket='/cloudsql/' + <INSTANCE_CONNECTION_NAME>,
                             user='<USER>',
                             password='<PASSWORD>',
                             db='<DATABASE>')

Дополнительную информацию об этом можно найти в документация Google о подключении к Cloud SQL из внешнего приложения, которое также использует облачный прокси.

Если вы используете Java. Документацию по подключению к сокету UNIX можно найти здесь: Cloud SQL Socket Factory для драйверов JDBC

Я думаю, что упустил важный момент в документации. Сокет UNIX... не TCP. Я попробую использовать Cloud SQL Socket Factory для драйверов JDBC. И обновлю этот пост.

LMM 31.05.2019 15:19

Поскольку я использую java, используя сокет UNIX, как описано здесь: связь Он работает с экземпляром в том же проекте.

LMM 31.05.2019 16:08

Попробуйте с Кваркусом. Не работает... quarkus.datasource.jdbc.url=jdbc:postgresql:///${DATASOURCE_‌​DBNAME}?socketFactor‌​y=com.google.cloud.s‌​ql.postgres.SocketFa‌ctory&cloudSqlInstan‌​ce=$ {DATASOURCE_URL}‌​&user=${DATASOURCE_U‌​SER}&password=${DATA‌​SOURCE_PWD}&useSSL=f‌​alse ... Кто-нибудь может мне помочь?

anthony44 13.06.2020 13:52

Привет, Энтони, у меня такая же проблема, я не могу подключиться с помощью quarkus (реактивный источник данных). Вы нашли какое-нибудь решение. Заранее спасибо!

danipenaperez 30.06.2020 10:18

Другие вопросы по теме