如何在 Heroku for Node 应用程序上设置环境变量并连接到 PostgreSQL 数据库?

新手上路,请多包涵

我知道在堆栈溢出方面存在相同/相似的问题,并且我也阅读了文档-我还是什么都不懂-如何设置这些变量以及在哪里!设置它们。

我的 env/production.js 文件:

 module.exports = {
    "DATABASE_URI": process.env.DATABASE_URI,
    "SESSION_SECRET": process.env.SESSION_SECRET,
    "TWITTER": {
       "consumerKey": process.env.TWITTER_CONSUMER_KEY,
       "consumerSecret": process.env.TWITTER_CONSUMER_SECRET,
       "callbackUrl": process.env.TWITTER_CALLBACK
    },
    "FACEBOOK": {
        "clientID": process.env.FACEBOOK_APP_ID,
        "clientSecret": process.env.FACEBOOK_CLIENT_SECRET,
        "callbackURL": process.env.FACEBOOK_CALLBACK_URL
    },
    "GOOGLE": {
        "clientID": process.env.GOOGLE_CLIENT_ID,
        "clientSecret": process.env.GOOGLE_CLIENT_SECRET,
        "callbackURL": process.env.GOOGLE_CALLBACK_URL
    },
    "LOGGING": true
};

在我的 env/development.js 文件中,我设置了变量(链接到我的 PostgreSQL/localhost/xxx)。我需要在 Heroku 中为所有人(谷歌、Facebook 等)设置它们还是只为数据库设置它们,因为我必须用 Heroku 创建一个?我是否将本地数据库的链接保留在我的开发文件中并单独链接到 Heroku 数据库?

我什至不知道我是否应该从命令行执行此操作?!在文档中它说: Heroku config:get CONFIG-VAR-NAME -s >> .env 那么它会是 Heroku config:get CONFIG-NAME OF MY HEROKU DATABASE -s >> .env 吗?

我是第一次部署,很困惑!帮助 :)

原文由 javascript2016 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 671
1 个回答

根据 文档,您可以使用 heroku CLI

 heroku config:set DATABASE_URI=database_uri_here --app your-app-name
heroku config:set SESSION_SECRET=session_secret --app your-app-name

或者你可以使用 UI https://dashboard-classic.heroku.com/apps/{your-app-name}/settings 并通过网络界面提供相同的变量,正如我在上面的评论中提到的

NODE_ENV=production 没有被特殊对待 heroku ,所以你需要提供它以及任何其他环境变量

原文由 dark_ruby 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题