Судя по нашим комментариям, нужно просто получить доступ к БД из экземпляра GCE, на котором все работает.
Для этого вам нужно открыть дыра в брандмауэре GCE (по умолчанию он блокирует входящий трафик c).
Первый шаг находится в экземпляре GCE, go отредактируйте его в консоли и прокрутите немного вниз, пока не увидите поле для Network tags
и введите туда что-нибудь, указывающее c ... вроде "sql -тестинг" или что-то в этом роде. Это сделано для того, чтобы вы могли применить правило брандмауэра ТОЛЬКО к этому экземпляру, а не ко всем экземплярам. Если вам удобно открывать доступ для всех ваших экземпляров GCE к вашему домашнему IP-адресу (я выбираю простой путь для подключения, есть и более безопасные и сложные способы сделать это), то вы можете пропустить эту часть.
Затем перейдите к Правилам брандмауэра: (https://console.cloud.google.com/networking/firewalls/list)
Нажмите «Создать правило брандмауэра» вверху. Назовите его, затем прокрутите немного вниз, пока не увидите «Цели», а точнее «Целевые теги». В этом поле целевых тегов введите тег, который вы дали своему экземпляру GCE. Или, если вы хотите, чтобы он применялся ко всем вашим экземплярам, вы можете изменить раскрывающийся список «Целевой объект» на «Все экземпляры в сети».
Для исходного фильтра оставьте его на «Диапазоны IP-адресов», а затем получите свой домашний IP-адрес и поместите его в фильтр диапазона исходных IP-адресов. Это нотация CIDR, поэтому подойдет только IP-адрес, или, если вы хотите быть точным, это будет <IP ADDRESS>/32
.
Для протоколов и портов вы можете либо «Разрешить все» (самый простой) или если вы действительно хотите указать c, вы можете использовать «tcp» и (мы не говорили об этом, но если это MySQL, скорее всего, 3306 или Postgres, скорее всего, 5432, если вы не изменили порт БД прослушивает).
Нажмите Create, и POOF у вас должен быть доступ к БД с помощью клиента db.