在CentOS上部署Node.js项目,可以按照以下步骤进行:
首先,你需要在CentOS上安装Node.js。你可以使用NodeSource提供的Node.js二进制分发库来安装。
添加NodeSource仓库:
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
这里的14.x
是你想要安装的Node.js版本,你可以根据需要更改。
安装Node.js和npm:
sudo yum install -y nodejs
验证安装:
node -v
npm -v
确保你的Node.js项目已经准备好,并且包含一个package.json
文件。
在你的项目目录中运行以下命令来安装所有依赖:
npm install
如果你的项目需要特定的环境变量,可以在项目根目录下创建一个.env
文件,并在其中设置这些变量。例如:
PORT=3000
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=password
然后,你可以使用dotenv
包来加载这些环境变量。首先安装dotenv
:
npm install dotenv
在你的主入口文件(例如app.js
或index.js
)中添加以下代码:
require('dotenv').config();
使用以下命令启动你的Node.js应用:
node app.js
或者,如果你使用的是Express框架,可以使用npm start
:
"scripts": {
"start": "node app.js"
}
然后运行:
npm start
为了确保你的Node.js应用在后台持续运行,并且能够自动重启,建议使用PM2。
安装PM2:
sudo npm install pm2 -g
启动项目:
pm2 start app.js --name my-app
这里的my-app
是你的应用名称,你可以根据需要更改。
查看进程列表:
pm2 list
停止进程:
pm2 stop my-app
重启进程:
pm2 restart my-app
删除进程:
pm2 delete my-app
为了提高性能和安全性,你可以配置Nginx作为反向代理。
安装Nginx:
sudo yum install nginx -y
启动并启用Nginx:
sudo systemctl start nginx
sudo systemctl enable nginx
配置Nginx:
编辑Nginx配置文件(通常位于/etc/nginx/nginx.conf
或/etc/nginx/conf.d/default.conf
),添加以下内容:
server {
listen 80;
server_name yourdomain.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;
}
}
将yourdomain.com
替换为你的域名,3000
替换为你的Node.js应用监听的端口。
重新加载Nginx配置:
sudo systemctl reload nginx
现在,你的Node.js项目应该已经成功部署在CentOS上,并且可以通过浏览器访问了。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: 如何在CentOS上配置IP转发