【发布时间】:2020-10-29 08:59:22
【问题描述】:
我目前正在学习 Node.js(使用 Express、Postgres、Sequelize)并且有一个在本地运行的非常简单的 (API) 应用程序(它正在工作,使用 Postman 进行了尝试)我现在想部署到 Heroku。由于我过去使用过 Rails,所以我有一些基本的 Heroku 知识,但我对 Rails 在幕后处理的一些事情感到困惑。
我已经设置了一个 config.js 文件,其中包含在运行 npx sequelize-cli init 时生成的一些生产凭据,我已经更新了我的本地设置(这可行!)但是我需要添加什么作为我的生产凭据?我需要自己提供吗?还是 Heroku 提供的?
请注意——我已经在 Heroku 上设置了我的管道和应用程序以及 Postgres,但是当我尝试通过 cli 连接到我的应用程序时,例如heroku run bash --app name-of-my-app 并运行 npx sequelize-cli db:create 它给了我以下错误:
Loaded configuration file "config/config.js".
Using environment "production".
TypeError: Cannot read property 'replace' of undefined
at Object.removeTicks (/app/node_modules/sequelize/lib/utils.js:347:12)
at Object.quoteIdentifier (/app/node_modules/sequelize/lib/dialects/abstract/query-generator/helpers/quote.js:50:35)
at PostgresQueryGenerator.quoteIdentifier (/app/node_modules/sequelize/lib/dialects/abstract/query-generator.js:891:24)
at getCreateDatabaseQuery (/app/node_modules/sequelize-cli/lib/commands/database.js:77:50)
at Object.exports.handler (/app/node_modules/sequelize-cli/lib/commands/database.js:45:17)
补充说明:
- 我正在使用 Node 14.0.0 并续集
6.3.0 - 我已将
"engines": { "node": "14.x" }添加到我的package.json - 我没有 procfile,因为 Heroku 表示不再需要它
- 我的应用入口点是
app.js
【问题讨论】:
标签: node.js postgresql heroku deployment sequelize.js