我通过ssh连接到远程服务器.然后我启动我的 node .js应用程序与Forever.在我关闭控制台窗口之前,一切正常.如何运行 node .即使我通过ssh关闭连接,js应用程序也会永远在我的远程服务器上运行吗?我只想启动一个应用程序并关闭我的电脑.我的应用程序应该在远程服务器的后台工作.

推荐答案

您可能还想考虑使用UpStudio实用程序.它将允许您像服务一样启动、停止和重新启动 node 应用程序.Upstart可以配置为在应用程序崩溃时自动重启.

安装upstart:

sudo apt-get install upstart

为你的应用程序创建一个简单的脚本,看起来像:

#!upstart
description "my app"

start on started mountall
stop on shutdown

# Automatically Respawn:
respawn
respawn limit 99 5

env NODE_ENV=production

exec node /somepath/myapp/app.js >> /var/log/myapp.log 2>&1

然后将脚本文件(myapp.conf)复制到/etc/init,并确保其标记为可执行文件.然后可以使用以下命令管理应用程序:

sudo start myapp
sudo stop myapp
sudo restart myapp

Node.js相关问答推荐

如何解决TypeError:requ.isAuthenticated不是函数错误?

购物车是空的状态|本地存储不更新产品数量|Redux|

如何修复PostgreSQL和NodeJS/NestJS应用程序之间的日期时间和时区问题?

Inno Setup如何在现有文本文件中追加新内容

Node js 处理回调和 Promise

在 getServerSideProps 中使用 EmailProvider 获取 NextAuth 会话会抛出 fs找不到模块

node_modules/preact/src/jsx.d.ts:2145:22 - 错误 TS2304:找不到名称SVGSetElement

Next.js 在我的电脑上没有构建错误,但它们在使用 Vercel 部署时发生

如何在没有 Typescript 的情况下以交互方式使用 Create-React-App?

Mocha调用所有it回调模拟(测试中间件)

如何解决这个关于 TaskRunner 的 Node/Express 代码问题?

Winston http 日志(log)级别的行为与 info 不同

AJAX 和 Node JS:在我的服务器中接收空数据

配额超出了每分钟的 Sheets API 写入请求数. node .js

Mongodb v4.0 Transaction, MongoError: Transaction numbers are allowed on a replica set member or mongos

mongoose 模式中的嵌套对象

create-react-app,安装错误(找不到命令)

npm 出现无法读取依赖项错误

nodejs:Ajax 与 Socket.IO,优缺点

yarn 和 npm 的主要区别是什么?