谷歌云运行、Django 和 sqlite

Posted

技术标签:

【中文标题】谷歌云运行、Django 和 sqlite【英文标题】:Google Cloud run, Django and sqlite 【发布时间】:2020-11-24 14:48:30 【问题描述】:

我正在用 Django 开发小型单用户应用程序。目前我使用 Heroku 这样做,效果很好。我希望将应用程序部署在 Google Cloud 上运行,以便在未来拥有更多的灵活性。

为了使开销尽可能小,我正在考虑使用 Sqlite。为了保持持久性,我只需要一个持久卷,它可以通过谷歌云存储来实现,谷歌云存储通过 gcsfuse 安装到 docker 容器中。但这是问题所在。我找不到带有 python 和 gcsfuse 的小图像。我不是码头工人专业人士。刚刚开始...

感谢任何帮助。

【问题讨论】:

签出这个项目......我不是作者,但这个hub.docker.com/r/ekino/gcsfuse 将是一个好的开始......也许将python安装到其中......或者找到一个python图像并安装gcsfuse进去 AFAIK,gVisor,默认的 Cloud RUN 沙箱将拒绝您的 GCS 熔断器安装。试试看,我对结果很感兴趣! 我已经尝试了很长时间,这就是我在这里结束的原因;-) 我可能会启动一个小型 SQL 实例......至少目前似乎没有这样的解决方案可能 【参考方案1】:

Google 本身提供了如何将(简单)Django 应用部署到 Google Cloud Run:

https://codelabs.developers.google.com/codelabs/cloud-run-django/

我自己作为一个 Google Cloud 新手一步一步地跟着它工作,它没有任何问题。顺便说一句,我是通过episode of the podcast Django Chat "Advanced Deployment" with Katie McLaughlin找到的。

HowTo 使用 Cloud SQL 实例而不是 Sqlite,但这似乎是一个不错的选择:

„一般来说,SQLite 不是一个好的数据库选择 专业网站。因此,虽然在本地使用 SQLite 很好,但 原型化一个想法,很少真正使用 SQLite 作为数据库 在一个生产项目上。“

William S. Vincent. „Django for Professionals, Chapter 2

除此之外,跳过 Cloud SQL 步骤并保留 SQLite 应该不难。

【讨论】:

以上是关于谷歌云运行、Django 和 sqlite的主要内容,如果未能解决你的问题,请参考以下文章

何时在 Django 项目中启动谷歌云分析器?

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

有没有办法通过docker容器内的代理访问谷歌云SQL

谷歌云端硬盘API:避免手动认证

如何在谷歌云数据存储中创建新模型(种类)

谷歌云 是啥