gpt4 book ai didi

node.js - 如何使用 Heroku 部署实时 Node.js 服务器

转载 作者:太空宇宙 更新时间:2023-11-03 23:40:46 26 4
gpt4 key购买 nike

很抱歉标题令人困惑,这是 Node.js 和 Heroku 的新手,但我正在尝试快速了解它。

我目前拥有一个域,我的第一个目标是对其进行设置,以便我进入该域,它使用 Heroku 唤醒并运行 Node.js,运行我的 web.js,并显示“Hello world” .

我已经浏览过this heroku/node.js tutorial ,所以我了解如何在本地设置内容,推送到 heroku 远程,并用它运行我的 Node.js 服务器(我理解正确吗?)。但是,我找不到任何关于如何将 Node.js 文件实际放置到外部服务器(因此,在本例中是我的域)上,并将 Heroku 的服务连接到这些文件,从而允许我的本地计算机与我的服务器上的 Node 。

如果您推荐任何教程或页面,我将不胜感激。有点东西,很可能对这里的很多事情感到困惑。谢谢!

最佳答案

Heroku 应用程序有自己的 git 存储库。因此,您从本地 git 目录推送到heroku的git远程。

设置:

git remote add heroku  <git://yourherokurepourl.git>

然后每次部署时:

git push heroku

这就是在 Heroku 的服务器上获取 Node.js 文件所需的全部内容。 Heroku 遵循 foreman 作为流程启动器。 foreman 需要在项目根目录中有一个名为 procfile 的特殊文件。 procfile 有简单的 unix 命令来启动每一行中的进程:

web : npm install && node app.js

所以,当你将项目推送到heroku的git时。它将查找 procfile 并启动其中定义的进程。您可以在此处放置更多命令。最好在本地/开发计算机上安装 foreman 并使用它进行测试。

在heroku应用程序设置中,您可以将您的www.domain.com地址“绑定(bind)”到heroku服务器上运行的 Node 应用程序。您必须在域名提供商的设置中执行相同的操作。 DNS 现在会将对 www.domain.com 的请求路由到您应用的服务器 IP。

在heroku上,配置存在于环境中。 Heroku 上提供了很多 process.env.* 。您可以通过向 foreman 提供 .env 文件来在本地模拟此过程。

最后,在您的 Node.js 代码中,确保监听 process.env.PORT 提供的值。

连接服务器:

  1. 使用Request模块直接调用其他服务器url。
  2. 或者,让服务器订阅并发布到集中式服务总线。

关于node.js - 如何使用 Heroku 部署实时 Node.js 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24216841/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com