Dashmox 仍在开发中。 更新会很频繁。免费套餐现已可用;Pro 和 Business 尚未推出。

安装免费套餐

在您自己的服务器上进行 Node.js 托管,由面板负责监管

选择 Node.js 应用运行环境,您的程序就成为一个网站:开机启动、退出后重启,其域名、证书和依赖都由系统代为处理。

没有任何内容被直接暴露。您的应用在回环地址上使用明文 HTTP 通信,完全不必了解 TLS,这正是它无需一行代码就能获得免费证书的原因。

面板为它做什么

Node.js 托管中没人乐意做的那些部分。

持续运行

在您应用它时启动,重启机器后再次启动,退出后自动重启:崩溃、未处理的 Promise 拒绝、被内存不足终止,都算。

依赖已安装

从面板安装时,它会以该网站自己的账户身份运行 npm,并在存在锁文件时使用该锁文件,因此安装的版本就是您提交的版本。

停止与重启

部署新代码只需一个按钮。在您排查原因期间停止一个行为异常的应用,同样只需一个按钮。

环境变量

以其最终生成的行形式编辑,每行一个名称和取值。您的数据库凭据和 API 密钥应放在这里,而不是放进代码仓库。

您的证书,免费

域名及其 Let's Encrypt 证书归 nginx 所有。续期不是您应用的问题,从来都不是。

受监控

运行环境监控每分钟采样一次应用状态并保留七天,因此“上周二很慢”是一个有答案的问题。

唯一的那条规则

监听分配给您的端口。

您的应用必须监听面板分配给它的端口,并绑定在回环地址上。硬编码为 3000 端口的应用将无法被访问。请从环境变量中读取端口,这也是每一份部署指南本来就告诉您要做的事,这样同一份代码在这里和在其他任何地方都能运行。

作为交换,证书、虚拟主机或防火墙端口等事项都无需您费心。WebSocket 可以工作:协议升级会被透传,连接保持打开,因此会升级请求的应用在这里的表现与在任何其他地方一致。

服务器可提供的版本是 Node.js 20、22 和 24,而版本是按网站选择的,而不是为整台机器选定的。同一台服务器上的两个应用可以需要不同的主版本。

它能触及什么

它自己的网站,以它自己的账户身份运行。

Node.js 应用以该网站自己的 Unix 账户身份、在该网站的目录内运行,与 PHP 站点完全一致。它读写自己的文件、访问自己的数据库,无法读取其他网站的文件,而且该账户没有 shell。

创建数据库的方式与其他网站完全相同:建一个带独立账户的数据库,再把凭据作为环境变量传入。邮件、DNS、计划任务和备份在 Node.js 网站上都能正常使用,因为它们都不关心站点运行什么。

如果您的需求超出这些,比如需要本服务器未安装的某种语言或系统库,可以改用容器网站来运行您自己的镜像。那是另一种运行环境,有不同的取舍,并且需要管理员先批准该镜像。

坦诚相告

监管不是什么。

重启一个已退出的进程只能换来时间,换不来正确性。一个每次请求都崩溃的应用会每次请求都重启,而网站依然打不开。它真正预防的是另一种情况,也就是实际会发生的那一种:凌晨两点的一个异常请求把站点弄下线,直到第二天早上才有人发现。

另外,Node.js 应用与机器上的其他所有网站共享这台机器。隔离依靠的是 Linux 账户和对该服务的限制,这与 PHP 站点所享有的隔离完全相同,并已完整说明。它不是虚拟机,本站也不会告诉您它是。

Node.js 指南

您的服务器,而其上的任何内容都不被计数。

完整的面板在一台服务器上免费使用,对网站、邮箱、DNS 区域和客户账户的数量均无限制。覆盖最多五台服务器的 Pro 尚未推出。