首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google Compute Engine与Google App Engine的连接

Google Compute Engine与Google App Engine的连接
EN

Stack Overflow用户
提问于 2017-09-14 05:26:52
回答 1查看 501关注 0票数 0

我正在尝试使用Laravel将一个带有MySQL数据库的Google Compute Engine实例连接到Google App Engine。我实际上已经将我的Google App Engine连接到一个Cloud SQL实例,这没有问题,但我需要一个额外的数据库连接到Google Compute Engine上的数据库。

Google Compute Engine实例在不同的项目上。这是我的方案:

项目A ->计算引擎->实例-> MySQL数据库

项目B ->应用引擎-> Laravel

项目B ->云SQL -> DB-实例-> MySQL数据库

这是我的app.yaml文件:

代码语言:javascript
复制
runtime: php
env: flex

runtime_config:
  document_root: public

# Ensure we skip ".env", which is only for local development
skip_files:
  - .env

env_variables:
  # Put production environment variables here.
  APP_LOG: "errorlog"
  APP_KEY: "[KEY]"
  STORAGE_DIR: "/tmp"
  CACHE_DRIVER: "database"
  SESSION_DRIVER: "database"
  APP_DEBUG: "true"

  #CLOUD SQL database connection
  DB_CONNECTION: "[DATABASE_1_NAME]"
  DB_HOST: "[CLOUD_SQL_INSTANCE_NAME]"
  DB_DATABASE: "[DATABASE_1_NAME]"
  DB_USERNAME: "root"
  DB_PASSWORD: "[PASSWORD]"
  DB_SOCKET: "/cloudsql/[PROJECTB]:[REGION]:[CLOUD_SQL_INSTANCE_NAME]"

  # COMPUTE ENGINE database connection
  DB_HOST_2: "[COMPUTE_ENGINE_INSTANCE_NAME]"
  DB_DATABASE_2: "[DATABASE_2_NAME]"
  DB_USERNAME_2: "root"
  DB_PASSWORD_2: "[PASSWORD]"

beta_settings:
    cloud_sql_instances: "[PROJECTB]:[REGION]:[CLOUD_SQL_INSTANCE_NAME]"
EN

回答 1

Stack Overflow用户

发布于 2018-05-27 17:28:47

我认为您使用的是Google App Engine标准环境和PHP。当您将GAE应用程序连接到托管在Google Compute Engine实例上的DB时,它将被视为到“外部DB”的连接。因此,您需要考虑将GAE作为GCE实例的外部客户端。

因此,您必须配置您的VPC firewall以接受从外部到端口3306的连接,并且您必须将外部GCE实例IP地址指定为您的连接字符串的主机。确保您的防火墙规则接受来自任何地方的连接(IP掩码: 0.0.0.0/0)。

希望这对你有帮助。再见

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46207076

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档