ssh root@your_server_ip
sudo apt update && sudo apt upgrade -y
adduser username
usermod -aG sudo username
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
node -v
npm -v
sudo npm install -g pm2
pm2 start app.js --name "my-app"
pm2 list # 查看运行中的应用
pm2 stop my-app # 停止应用
pm2 restart my-app # 重启应用
pm2 delete my-app # 删除应用
pm2 logs # 查看日志
pm2 startup
pm2 save
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
创建配置文件:
sudo nano /etc/nginx/sites-available/my-app
添加以下内容(根据实际情况修改):
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
location / {
proxy_pass http://localhost:3000; # 假设Node应用运行在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 ln -s /etc/nginx/sites-available/my-app /etc/nginx/sites-enabled
sudo nginx -t # 测试配置
sudo systemctl restart nginx
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
sudo certbot renew --dry-run
pm2 monit
htop
# NGINX访问日志
sudo tail -f /var/log/nginx/access.log
# NGINX错误日志
sudo tail -f /var/log/nginx/error.log
# PM2应用日志
pm2 logs
sudo netstat -tulnp | grep :80
sudo chown -R username:username /path/to/your/app
sudo nginx -t
通过以上步骤,你应该已经成功配置了一个基于VPS、NGINX和PM2的生产环境Node.js应用服务器。根据你的具体应用需求,可能还需要进一步调整配置。