如何使用谷歌云数据库部署 Laravel 8 谷歌云运行

Posted

技术标签:

【中文标题】如何使用谷歌云数据库部署 Laravel 8 谷歌云运行【英文标题】:How to deploy Laravel 8 google cloud run with google cloud database 【发布时间】:2021-05-13 22:38:48 【问题描述】:

我正在寻求帮助,以使用 docker 将 laravel 应用程序容器化,在本地运行它并使其可部署到 gcloud Run,连接到 gcloud 数据库。 我的应用程序是一个 API,使用 laravel 构建,到目前为止,我只是在开发中使用了 laravel 8 附带的 docker-compose/sail 包。

这是我想要实现的目标:

在 gcloud Run 上运行的 Laravel 应用。 gcloud、mysql、PostgreSQL 或 SQL 服务器中的数据库。 (首选Mysql)。 存储在 gcloud 中的环境。

我的问题是可以找到任何信息,如果或如何使用/重写 docker-composer 文件 i laravel 8,创建 Dockerfile 或 cloudbuild 文件,并为 gcloud 构建它。

也许我可以在 cloudbuild.yml 文件中添加类似的内容:

#cloudbuild.yml
  steps:
  # running docker-compose
  - name: 'docker/compose:1.26.2'
    args: ['up', '-d']

感谢任何帮助/指导。

【问题讨论】:

this 是您要找的吗? 是的,那个视频对如何构建一些 conf 文件等有很大帮助。但不涉及数据库连接和秘密 对于那些你可以分别查看documentation和article的人。 【参考方案1】:

正如该问题的 cmets 中所述,您可以查看此 video,它通过分步教程解释了如何使用 docker-composer、laravel 将应用部署到 Cloud Run。

根据与所述应用程序的数据库连接,Connecting from Cloud Run (fully managed) to Cloud SQL documentation 在这方面非常完整,对于秘密管理,我发现 this article 解释了如何在 Cloud Run 中实施秘密管理器。

我知道这个答案基本上只是文档和文章的链接,但我相信在 Cloud Run 中实现应用所需的所有信息都在其中。

【讨论】:

我已成功将我的应用部署到 Google Cloud App Engine,但无法将文件存储在“/storage”中。 您无法使用 Google Cloud App Engine 上传和存储文件。在此处查看详细信息:***.com/questions/2693081/…。将文件存储在 Google 云存储或同等文件存储服务上。

以上是关于如何使用谷歌云数据库部署 Laravel 8 谷歌云运行的主要内容,如果未能解决你的问题,请参考以下文章

如何在谷歌云功能中使用谷歌表格 API

谷歌云数据存储与谷歌应用引擎

使用谷歌云数据流执行谷歌 Bigquery 查询

如何在谷歌云存储中启用实时对象访问分析?

如何在谷歌大查询中从谷歌云存储上传表格

如何使用芹菜工人将 django 项目部署到谷歌云?