Подключите Cloud Run к облаку SQL Экземпляр сервера в C# - PullRequest
0 голосов
/ 20 марта 2020

Если я понимаю, что вкладка «Cloud SQL Connections» в Cloud Run должна создать экземпляр Cloud SQL Proxy.

Какую строку соединения sql server я должен использовать для этой работы?

Настройка: (Все в одном проекте GCP): 1. Создайте облачный Sql экземпляр SQL Сервера. 2. Загрузите изображение docker в реестр Google Container. Написано с использованием .netcore с кодом для подключения к SQL Серверу, созданному на шаге 1 2. Создайте экземпляр службы в Google Cloud Run. 3. Укажите Cloud SQL Connections, выберите свой экземпляр сервера sql в списке и разверните.

Ответы [ 2 ]

1 голос
/ 22 марта 2020

Я не пробовал это с помощью Cloud Run и SQL Сервер, но ...

  • Прокси должен сделать подключение доступным для вашего. NET клиент на 127.0.0.1:1443 ( ссылка )

  • Если вы используете клиент базы данных, похожий на пример Google , ваше соединение строка будет выглядеть следующим образом:

"ConnectionString": "User Id=[[USER]];Password=[[PASS]];Server=127.0.0.1;Database=[[DB]];"

Если я правильно понимаю, по умолчанию используется порт 1443.

NB Для других комментаторов ваш Вопрос будет улучшен с более подробной информацией. Когда вы пишете, что выполняете шаги, пожалуйста, включите ссылки. Когда вы ссылаетесь на свою конфигурацию, пожалуйста, включите фрагменты. Люди, отвечающие на ваши вопросы, извлекают выгоду из того, что от вопросов требуется как можно меньше информации.

0 голосов
/ 23 марта 2020

Я не думаю, что это пока поддерживается. Для Cloud SQL Server нет документации.

Согласно официальной документации :

После правильной настройки вы можете подключить свой сервис к Cloud. Сокет домена SQL экземпляра unix в формате: /cloudsql/INSTANCE_CONNECTION_NAME.

Примечание. Cloud Run (полностью управляемый) не поддерживает подключение к экземпляру Cloud SQL с использованием TCP. Ваш код не должен пытаться получить доступ к экземпляру, используя IP-адрес, такой как 127.0.0.1 или 172.17.0.1.

Также :

Примечание : Cloud SQL Proxy не поддерживает Unix сокетов на Windows.

Я попытался сделать это с помощью Cloud SQL Proxy с tcp и получил:

 System.Net.Internals.SocketExceptionFactory+ExtendedSocketException (111): Connection refused 127.0.0.1:1433
...