【问题标题】:Is there a method to link an external managed database to a dokku application?有没有一种方法可以将外部托管数据库链接到 dokku 应用程序?
【发布时间】:2022-07-12 00:06:14
【问题描述】:

我一直在尝试将 Digital Ocean 管理的数据库链接到我在他们的一个 Droplet 上运行的应用程序,即 VPS。

我已尝试使用找到的 dokku postgres 库 here 创建具有自定义环境变量的服务,但 DATABASE_URL 仍然设置不正确并指向本地地址,而不是我需要设置的外部托管参数。

在使用以下命令创建服务时,将 --custom-env 标志与从 DigitalOcean 控制面板收集的参数一起使用是正确的方法

dokku postgres:create <service> [--create-flags...]

?

是否可以使用 dokku 连接到外部数据库?

我能够创建 postgres 实例的本地 docker 容器并从应用程序链接到这些容器而不会出现问题。只有当我尝试指向外部托管数据库服务时才会遇到问题。

在这个阶段,我假设这是我面临的架构问题,并且正在重新评估我在哪里部署我的应用程序。任何指向正确方向的指针都非常感谢!感谢阅读。

【问题讨论】:

  • 由于某种原因,我无法编辑我原来的问题。我相信我这样做是完全错误的。我不应该使用 dokku 创建以某种方式链接到外部数据库的服务,我应该通过将 env var DATABASE_URL 设置为与 DigitalOcean 提供的 URI 匹配的值,将我的应用程序直接指向托管数据库。一旦有机会(可能从现在起一周左右),我会尝试并报告。

标签: postgresql docker digital-ocean dokku


【解决方案1】:

我知道你自己解决了这个问题,但是如果其他人偶然发现它(Dokku 或 DO 都没有明确说明如何做到这一点),解决方案是使用“DATABASE_URL”键在 Dokku 中设置一个环境变量。

dokku config:set &lt;app&gt; DATABASE_URL="&lt;your_DO_db_connection_string&gt;"

【讨论】:

    猜你喜欢
    • 2014-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-17
    • 1970-01-01
    • 1970-01-01
    • 2013-10-12
    • 2019-02-05
    相关资源
    最近更新 更多