首页 > 解决方案 > 我将如何托管多个与 Heroku 共享相同 Mysql 数据库的 Spring Boot Web 应用程序?

问题描述

我已经实现了一个电子商务网站,有 2 个 Spring Boot Web 应用程序,一个用于管理员,另一个用于客户。这两个应用程序都使用相同的 Mysql Db。我将如何在 Heroku 上托管我的应用程序和数据库。

我是一个绝对的初学者,想知道是否有任何方法可以实现这一点,因为标准 Heroku 仅支持一个应用程序一个 repo 用例。经过一些研究,我发现可以使用共享插件在 Heroku 应用程序之间共享数据库,但不知道如何。

如果有人请向我简要介绍实现相同目标的步骤,那就太好了。

标签: mysqlspring-bootherokuweb-applicationsadd-on

解决方案


您可以让 www 指向一个应用程序(请参阅域配置的设置)和一个指向管理应用程序的管理子域。所以,两个heroku 应用程序。现在,您的首要任务是电子商务,因此您应该在那里创建数据库插件。

heroku 中的所有资源都使用附件的概念。该插件存在于某处,并通过在那里导出环境变量附加到您的应用程序。

现在您已经在电子商务应用程序中创建了数据库,您可以与管理应用程序共享同一个数据库。检查文档:

https://devcenter.heroku.com/articles/heroku-postgresql#sharing-heroku-postgres-between-applications

heroku addons:attach ecommerce-app-name::DATABASE --app admin-app-name

推荐阅读