【发布时间】:2020-04-17 13:51:23
【问题描述】:
我正在尝试在本地设置现有的 Heroku 应用程序。为此,我 git cloned 来自我们在 Github 的仓库中的应用程序。然后我为 heroku 添加了git remote。
通常,使用Travis CI 构建到服务器,但现在我想直接从heroku 在本地运行应用程序。
heroku config 返回配置变量就好了。
但是heroku local web返回错误
throw new Error('Configuration property "' + property + '" is not defined');
错误:配置属性“redis.url”未定义
redis.js
import config from 'config';
const redis = new Redis(config.get('redis.url'), {
keyPrefix: 'kw:',
});
config 文件夹位于我的 repo 的根目录中。
config/default.js
import dotenv from 'dotenv';
dotenv.config({ silent: true });
module.exports = {
...,
redis: {
url: process.env.REDIS_URL || process.env.REDISCLOUD_URL,
},
...
}
package.js中的相关脚本
"start:server": "./node_modules/.bin/babel-node src/server.js",
"start:worker": "./node_modules/.bin/babel-node src/worker/worker.js",
"start": "./node_modules/.bin/nf start",
如果我运行 npm run start:server 我会得到同样的错误。
如果我注释掉 redis.url 代码,我会得到同样的错误,但 config 中的另一个变量。
我错过了什么?如果您需要澄清,请告诉我。
【问题讨论】:
标签: node.js heroku redis config dotenv