一、Node.js 简介

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,它允许开发者使用 JavaScript 在服务器端编写应用程序。Node.js 使用事件驱动、非阻塞 I/O 模式,使其成为构建高效、可扩展的网络应用程序的理想选择。

二、CentOS 环境准备

在部署 Node.js 之前,需要确保 CentOS 系统满足以下要求:

  1. 操作系统:CentOS 7 或更高版本。
  2. Python:Node.js 需要 Python 2.6 或更高版本,但推荐使用 Python 2.7 或 Python 3。
  3. GCC:Node.js 的编译需要 GCC。
  4. Make:用于编译 Node.js。

2.1 安装依赖

使用以下命令安装 Node.js 所需的依赖:

sudo yum install -y python python-pip python-devel make gcc openssl openssl-devel

2.2 安装 Node.js

以下是使用 yum 安装 Node.js 的步骤:

  1. 添加 Node.js Yum 仓库
curl --silent --location https://rpm.nodesource.com/setup_16.x | sudo bash -
  1. 安装 Node.js
sudo yum install -y nodejs
  1. 验证安装
node -v
npm -v

三、Node.js 应用部署

3.1 创建 Node.js 应用

  1. 创建项目目录
mkdir my-node-app
cd my-node-app
  1. 初始化项目
npm init -y
  1. 安装依赖

假设你的项目需要 expressbody-parser,你可以使用以下命令安装它们:

npm install express body-parser
  1. 编写代码

创建一个名为 app.js 的文件,并添加以下代码:

const express = require('express');
const bodyParser = require('body-parser');

const app = express();

app.use(bodyParser.json());

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

const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`);
});

3.2 部署 Node.js 应用

  1. 构建生产环境
npm run build
  1. 运行应用
node app.js

或者,如果你使用了 pm2 作为进程管理器,可以使用以下命令:

pm2 start app.js
  1. 配置 Nginx

创建一个名为 my-node-app.conf 的文件,并添加以下内容:

server {
    listen 80;
    server_name my-node-app.example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}
  1. 启动 Nginx
sudo systemctl start nginx

四、总结

本文介绍了在 CentOS 环境下部署 Node.js 应用的基本步骤。从安装 Node.js 到部署应用,你可以按照上述指南完成整个流程。随着经验的积累,你可以进一步优化你的 Node.js 应用,提高其性能和可维护性。