Node.js 部署:生产环境最佳实践
学习使用 PM2、Docker 和 Nginx 部署 Node.js 应用。 · 难度:入门 · +15XP
生产部署关键要素
将 Node.js 应用部署到生产环境需要考虑进程管理、负载均衡、环境配置、日志管理等多个方面。
使用 PM2 进程管理
# 安装 PM2
npm install -g pm2
# 启动应用
pm2 start app.js -i max
# 保存进程列表
pm2 save
# 设置开机启动
pm2 startup
Docker 部署
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "app.js"]Nginx 反向代理
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
}
}练习提示
创建一个简单的 Express 应用,并编写 PM2 配置文件 ecosystem.config.js。