【问题标题】:How to deploy two grails app to cloudfoundry in separate databases如何将两个 grails 应用程序部署到不同数据库中的 cloudfoundry
【发布时间】:2013-06-01 13:45:07
【问题描述】:

将 grails 应用程序部署到 cloudfoundry 非常简单。现在我想将另一个应用程序推送到 cloudfoundry。但是,第二个应用程序在与我的第一个应用程序完全相同的数据库中创建表。我知道它会并排运行,但是,我确实想将它们视为单独的实体,并希望在两个数据库中运行这两个应用程序。请告诉我如何做到这一点。

【问题讨论】:

    标签: mysql grails cloud-foundry


    【解决方案1】:

    我不确定您使用什么方法/插件/CLI 工具来部署到 Cloud Foundry,但如果您使用的是 Cloud Foundry Integration 插件,这可能会有所帮助。

    我能够部署绑定到 2 个不同 MySQL 服务实例的 2 个单独的应用程序。这里的关键信息是将服务“绑定”到您部署的应用程序。您可能已将两个应用程序绑定到一项服务。如果您使用的是 CFI 插件,请发出 cf-apps,它会列出您的应用以及它们绑定的服务

    +-------------+----+---------+--------------------------+--------------------+
    | Application | #  | Health  | URLs                     | Services           |
    +-------------+----+---------+--------------------------+--------------------+
    | app1        | 1  | RUNNING | app1.cloudfoundry.com    | mysql-3xxxxxx      |
    +-------------+----+---------+--------------------------+--------------------+
    | app2        | 1  | RUNNING | app2.cloudfoundry.com    | mysql-exxxxxx      |
    +-------------+----+---------+--------------------------+--------------------+
    

    如果您的应用确实绑定到同一个服务,只需使用 CFI 插件执行以下操作

    • 删除错误绑定的应用
    • 发出 cf-create-service service-you-want
    • 记下新创建应用的服务名称
    • 重新部署您的第二个应用并绑定到您刚刚创建的新服务

      grails prod cf-push --services=your-new-service-name-xxxx

      注意:当您部署时,CLI 工具可能会要求您选择性地绑定到您不想要的其他服务(第一个应用的服务),因此您需要适当地回答。我不确定为什么它会这样做,即使你已经明确地传递了 --services 参数以及你想要的服务。

    无论如何,它都在文档中,如果你不使用 CFI 插件 - 恕我直言,你应该 - 这是非常棒的插件。

    【讨论】:

    • 我正在使用grails cloud-foundry插件,没想到我可以创建多个dababase服务。谢谢,现在我明白了,我只需要创建另一个 mysql 服务并将我的第二个应用程序绑定到它。谢谢
    猜你喜欢
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    相关资源
    最近更新 更多