在CentOS上部署Node.js微服务涉及几个步骤,包括安装Node.js、设置环境、编写和测试代码、以及配置和启动服务。以下是一个详细的指南:
1. 安装Node.js
首先,你需要在CentOS上安装Node.js。你可以使用NodeSource的二进制分发库来安装最新版本的Node.js。
使用NodeSource安装Node.js
-
添加NodeSource库:
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash - -
安装Node.js:
sudo yum install -y nodejs -
验证安装:
node -v npm -v
2. 设置环境
确保你的环境变量设置正确,以便Node.js和npm命令可以在任何地方运行。
echo "export PATH=\$PATH:/usr/local/bin/node:/usr/local/bin/npm" >> ~/.bashrc
source ~/.bashrc
3. 编写和测试代码
编写你的Node.js微服务代码,并使用npm进行依赖管理。
示例项目结构
my-node-service/
├── app.js
├── package.json
└── package-lock.json
创建package.json
npm init -y
安装依赖
npm install express
编写app.js
const express = require('express');
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(port, () => {
console.log(`Example app listening at http://localhost:${port}`);
});
测试代码
node app.js
访问 http://localhost:3000 应该会看到 “Hello World!”。
4. 配置和启动服务
为了在生产环境中运行Node.js应用,你需要进行一些配置和启动服务的步骤。
使用PM2管理Node.js应用
PM2是一个进程管理器,可以帮助你管理和监控Node.js应用。
-
安装PM2:
sudo npm install pm2 -g -
启动应用:
pm2 start app.js --name my-node-service -
查看应用状态:
pm2 status -
停止应用:
pm2 stop my-node-service -
重启应用:
pm2 restart my-node-service
配置Nginx作为反向代理
为了提高性能和安全性,你可以使用Nginx作为反向代理。
-
安装Nginx:
sudo yum install nginx -y -
启动Nginx:
sudo systemctl start nginx sudo systemctl enable nginx -
配置Nginx:
编辑
/etc/nginx/conf.d/my-node-service.conf文件:server { listen 80; server_name your_domain.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; } } -
重启Nginx:
sudo systemctl restart nginx
5. 配置防火墙
确保你的防火墙允许HTTP和HTTPS流量。
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
6. 监控和日志
使用PM2的监控和日志功能来管理你的应用。
-
查看日志:
pm2 logs my-node-service -
监控应用:
pm2 monit
通过以上步骤,你应该能够在CentOS上成功部署一个Node.js微服务。
以上就是关于“如何在CentOS上部署Node.js微服务”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm