Strapi部署到Heroku

时间:2020-06-15 10:37:56

标签: heroku strapi

我对Strapi和Heroku完全陌生。我正在尝试将在本地运行良好的应用程序部署到Heroku,但是出现以下错误:

2020-06-15T09:56:29.114780 + 00:00 app [web.1]:[2020-06-15T09:56:29.114Z]错误无法注册“ menus.menus”模型。 2020-06-15T09:56:29.115672 + 00:00 app [web.1]:[2020-06-15T09:56:29.115Z]错误TimeoutError:Knex:超时获取连接。游泳池可能已满。您是否错过了.transacting(trx)通话?

一开始我以为连接数据库是一个问题,但是在我的本地环境中,它可以完美地工作并且没有问题。

我什至将数据库升级到付费版本,以防连接超时。

我还遵循一些发现的答案,这些答案仅涉及如下修改我的config / environment / production / database.json:

{
  "defaultConnection": "default",
  "connections": {
    "default": {
      "connector": "bookshelf",
      "settings": {
        "client": "postgres",
        "host": "***.compute-1.amazonaws.com",
        "port": "5432",
        "database": "***",
        "username": "***",
        "password": "***",
        "ssl": { "rejectUnauthorized": false }
      },
      "options": {
        "debug": false,
        "acquireConnectionTimeout": 100000,
        "pool": {
          "min": 0,
          "max": 10,
          "createTimeoutMillis": 30000,
          "acquireTimeoutMillis": 600000,
          "idleTimeoutMillis": 20000,
          "reapIntervalMillis": 20000,
          "createRetryIntervalMillis": 200
        }
      }
    }
  }
}

还有其他想法吗?

当我在本地运行开发时,我得到了警告(但即使如此,该应用仍然会在以后运行):

[2020-06-15T10:36:41.261Z]警告引导程序函数执行所需的时间异常长(3500毫秒)。 [2020-06-15T10:36:41.261Z]警告确定要调用吗? [2020-06-15T10:36:42.476Z]警告引导功能执行所需的时间异常长(3500毫秒)。 [2020-06-15T10:36:42.476Z]警告确定要调用它吗?

1 个答案:

答案 0 :(得分:0)

一个简单的第一步选项是在 heroku 上启动一个 Strapi 快速入门应用程序。您可以在此处找到此链接。https://github.com/strapi/strapi

使用此方法重新启动将为您提供一个工作且安全的实例以开始开发。

另请注意,heroku 将trapi 部署到生产环境,因此您无法使用内容类型编辑器,因此建议您在本地开发并测试您的应用,并使用heroku cli 更新您的部署。