温馨提示×

ubuntu nodejs怎么建服务

小樊
35
2026-10-21 09:17:07
栏目: 编程语言

在 Ubuntu 上用 Node.js 建服务,一般分 “写服务代码” 和 “让服务一直运行(开机自启)” 两部分。下面给你一套常用、实用的做法。


一、安装 Node.js

# 更新软件源
sudo apt update

# 安装 Node.js 和 npm
sudo apt install nodejs npm -y

# 查看版本
node -v
npm -v

推荐用 Node 18+,如果需要新版本,可以用 nvm 安装。


二、写一个最简单的 Node 服务

新建目录和文件:

mkdir my-server
cd my-server
nano server.js

server.js 示例(HTTP 服务):

const http = require('http');

const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello from Node.js!\n');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000');
});

运行:

node server.js

浏览器访问:

http://服务器IP:3000

三、用 Express 建服务(推荐)

npm init -y
npm install express

server.js:

const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send('Hello Express!');
});

app.listen(3000, () => {
  console.log('Server on port 3000');
});

四、让 Node 服务后台运行(重要)

方式 1:用 PM2(最推荐)

sudo npm install -g pm2
pm2 start server.js
pm2 startup
pm2 save

常用命令:

pm2 list
pm2 logs
pm2 restart server.js
pm2 stop server.js

✅ 支持开机自启、崩溃自动重启


方式 2:用 systemd(系统服务)

新建服务文件:

sudo nano /etc/systemd/system/node-server.service

内容示例:

[Unit]
Description=Node.js Server
After=network.target

[Service]
ExecStart=/usr/bin/node /home/ubuntu/my-server/server.js
WorkingDirectory=/home/ubuntu/my-server
User=ubuntu
Restart=always

[Install]
WantedBy=multi-user.target

启动:

sudo systemctl daemon-reload
sudo systemctl start node-server
sudo systemctl enable node-server

查看状态:

sudo systemctl status node-server

五、开放端口(如有防火墙)

sudo ufw allow 3000

六、常见场景建议

场景 建议
学习 / 测试 node server.js
生产环境 PM2 或 systemd
对外访问 Nginx 反代 + Node
HTTPS Nginx + Let’s Encrypt

如果你愿意,可以告诉我:

  • 是 本地测试 还是 服务器部署
  • 是否要用 Express / Koa / Nest
  • 要不要 Nginx 反向代理

我可以直接给你一套完整配置。

0 踩