全栈开发框架

一个基于Node.js和React的全栈开发框架,支持快速开发和部署,适用于构建现代Web应用。

  • by Naltpom
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Naltpom/vps-paas-project-template

使用说明

{{项目名称}}

{{描述}}

🚀 快速开始

先决条件

  • Node.js 22+LTS
  • Docker&Docker编写
  • PostgreSQL(可选,用于本地开发)

发展

# Install dependencies
cd backend && npm install
cd ../frontend && npm install

# Start development servers
docker-compose up

# Or run individually:
# Backend: cd backend && npm run dev
# Frontend: cd frontend && npm run dev

生产部署

该项目旨在部署在VPS MCP PaaS平台上。

# Build Docker images
docker build -t {{PROJECT_NAME}}-backend:latest ./backend
docker build -t {{PROJECT_NAME}}-frontend:latest ./frontend

# Run containers
docker run -d -p 3000:3000 {{PROJECT_NAME}}-backend:latest
docker run -d -p 80:80 {{PROJECT_NAME}}-frontend:latest

📁 项目结构

.
├── backend/           # Express.js API
│   ├── src/
│   │   ├── index.ts       # Entry point
│   │   ├── config/        # Configuration
│   │   ├── routes/        # API routes
│   │   └── middleware/    # Express middleware
│   ├── Dockerfile
│   └── package.json
│
├── frontend/          # React + Vite
│   ├── src/
│   │   ├── App.tsx        # Main component
│   │   └── main.tsx       # Entry point
│   ├── Dockerfile
│   ├── nginx.conf         # Nginx configuration
│   └── package.json
│
└── docker-compose.yml # Dev environment

🔧 环境变量

后端(.env)

NODE_ENV=development
PORT=3000
DATABASE_URL=postgresql://user:password@localhost:5432/db_name

看 backend/.env.example 查看完整列表。

📡 API终点

  • GET / -API信息
  • GET /health -健康检查
  • GET /api -API路线

🐳 码头工人

后端

  • 多阶段构建(构建器+生产)
  • Alpine Linux基础版(小图像大小)
  • 非root用户(安全)
  • 健康检查端点

前端

  • 多阶段构建(Vite构建+Nginx)
  • 优化静态文件服务
  • 已配置安全标头

🔒 安全

  • Helmet.js用于安全标头
  • CORS配置
  • 非根Docker容器
  • 环境变量验证(Zod)
  • 生产中的只读容器

📝 许可证

麻省理工学院