下面给你一套在 CentOS 上部署 Node.js 项目的常见、可落地方案,从安装到上线,适合大多数场景(Web 服务、API 服务等)。
sudo yum update -y
sudo yum install -y curl wget git vim
curl -sL https://rpm.nodesource.com/setup_18.x | sudo bash -
sudo yum install -y nodejs
查看版本:
node -v
npm -v
git clone https://github.com/your/project.git
cd project
npm install
scp -r ./project user@server:/home/user/
node app.js
sudo npm install -g pm2
pm2 start app.js --name my-node-app
pm2 list
pm2 logs
pm2 restart my-node-app
pm2 stop my-node-app
pm2 startup
pm2 save
sudo yum install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
编辑:
sudo vim /etc/nginx/conf.d/node.conf
示例:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1: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;
}
}
sudo nginx -t
sudo systemctl reload nginx
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload
sudo yum install -y certbot python3-certbot-nginx
sudo certbot --nginx
lsof -i:3000
which node
yum update
curl -sL https://rpm.nodesource.com/setup_18.x | bash -
yum install nodejs -y
npm i -g pm2
git clone 项目
npm install
pm2 start app.js
nginx 反向代理
如果你愿意,可以告诉我:
我可以给你定制部署方案。