在阿里云服务器上快速配置Node.js开发环境的完整指南:
1. 准备阿里云服务器
创建ECS实例
# 推荐配置
- 操作系统:Ubuntu 20.04/22.04 或 CentOS 7/8
- 实例规格:ecs.t5-lc1m1.small(入门级)
- 安全组:开放22(SSH)、3000/8080(HTTP)端口
连接服务器
# SSH连接
ssh root@你的公网IP
# 输入密码或使用密钥登录
2. 系统基础配置
更新系统包
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS/RHEL
sudo yum update -y
安装必要工具
# Ubuntu/Debian
sudo apt install -y curl wget git vim build-essential
# CentOS/RHEL
sudo yum install -y curl wget git vim gcc-c++ make
3. 安装Node.js(推荐方法)
方法一:使用NodeSource仓库(推荐)
# 下载并安装NodeSource仓库
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
# 安装Node.js和npm
sudo apt install -y nodejs
# 验证安装
node --version
npm --version
方法二:使用nvm(Node版本管理器)
# 安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# 重新加载shell配置
source ~/.bashrc
# 安装最新LTS版本
nvm install --lts
nvm use --lts
# 设置默认版本
nvm alias default lts/*
方法三:直接下载二进制包
# 下载Node.js
wget https://nodejs.org/dist/v18.17.0/node-v18.17.0-linux-x64.tar.xz
# 解压
tar -xf node-v18.17.0-linux-x64.tar.xz
sudo mv node-v18.17.0-linux-x64 /usr/local/nodejs
# 配置环境变量
echo 'export PATH=/usr/local/nodejs/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
4. 配置开发环境
创建项目目录
mkdir ~/my-node-app
cd ~/my-node-app
初始化Node.js项目
# 初始化package.json
npm init -y
# 安装常用依赖
npm install express mongoose dotenv cors helmet morgan
npm install --save-dev nodemon eslint prettier
创建基本服务器文件
// server.js
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;
app.use(express.json());
app.use(cors());
app.get('/', (req, res) => {
res.json({ message: 'Hello from Alibaba Cloud!' });
});
app.listen(PORT, '0.0.0.0', () => {
console.log(`Server running on http://0.0.0.0:${PORT}`);
});
5. 配置进程管理
使用PM2管理应用
# 全局安装PM2
npm install -g pm2
# 启动应用
pm2 start server.js --name "my-app"
# 设置开机自启
pm2 startup
pm2 save
# 常用命令
pm2 list # 查看运行的应用
pm2 logs my-app # 查看日志
pm2 restart my-app # 重启应用
pm2 delete my-app # 删除应用
6. 配置防火墙
Ubuntu (UFW)
# 开放端口
sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw allow 3000
# 启用防火墙
sudo ufw enable
CentOS (firewalld)
# 开放端口
sudo firewall-cmd --permanent --add-port=3000/tcp
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
# 重新加载配置
sudo firewall-cmd --reload
7. 配置域名和HTTPS(可选)
安装Nginx反向X_X
# 安装Nginx
sudo apt install nginx -y
# 配置反向X_X
sudo nano /etc/nginx/sites-available/my-app
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_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}
启用HTTPS(使用Let’s Encrypt)
# 安装Certbot
sudo apt install certbot python3-certbot-nginx -y
# 获取SSL证书
sudo certbot --nginx -d your-domain.com
8. 安全加固
创建普通用户
# 创建新用户
sudo adduser deploy
sudo usermod -aG sudo deploy
# 切换到新用户
su - deploy
配置SSH安全
# 编辑SSH配置
sudo nano /etc/ssh/sshd_config
# 修改以下设置
Port 2222 # 更改默认端口
PermitRootLogin no # 禁止root登录
PasswordAuthentication no # 禁用密码登录,使用密钥
9. 自动化部署脚本
创建部署脚本 deploy.sh:
#!/bin/bash
# 更新代码
git pull origin main
# 安装依赖
npm install
# 构建项目(如果有前端)
# npm run build
# 重启应用
pm2 restart my-app
# 清理
pm2 save
echo "Deployment completed!"
赋予执行权限:
chmod +x deploy.sh
10. 监控和维护
查看系统状态
# 查看内存使用
free -h
# 查看磁盘空间
df -h
# 查看CPU使用
top
# 查看网络连接
netstat -tuln
日志监控
# 实时查看应用日志
pm2 logs my-app --lines 100
# 查看系统日志
sudo journalctl -u nginx -f
这样就完成了阿里云服务器上的Node.js开发环境配置。建议定期更新系统和软件包,保持安全性。
秒懂云