กลับไปหน้าหลัก

บทที่ 12: Deployment และ Production

การ deploy Prisma application ใน production environments
50 นาที
ขั้นสูง
Production

🌐 Environment Setup

🔧 Environment Variables
.env.production
# Database
DATABASE_URL="postgresql://user:password@host:5432/production_db"
SHADOW_DATABASE_URL="postgresql://user:password@host:5432/shadow_db"

# Connection Pool
DATABASE_POOL_SIZE=20
DATABASE_TIMEOUT=30000

# Application
NODE_ENV=production
PORT=3000

# Security
JWT_SECRET=your-super-secure-jwt-secret
ENCRYPTION_KEY=your-32-character-encryption-key

# Monitoring
LOG_LEVEL=info
SENTRY_DSN=your-sentry-dsn

# Cloud Services
AWS_REGION=ap-southeast-1
REDIS_URL=redis://cache:6379
📦 Docker Configuration
Dockerfile
FROM node:18-alpine

WORKDIR /app

# Copy package files
COPY package*.json ./
COPY prisma ./prisma/

# Install dependencies
RUN npm ci --only=production

# Generate Prisma Client
RUN npx prisma generate

# Copy application code
COPY . .

# Build application
RUN npm run build

# Create non-root user
RUN addgroup -g 1001 -S nodejs
RUN adduser -S nextjs -u 1001

USER nextjs

EXPOSE 3000

CMD ["npm", "start"]
☁️ Cloud Platform Deployment
Vercel
  • Zero-config deployment
  • Automatic SSL
  • Edge functions
Railway/Render
  • Database included
  • Auto migrations
  • Built-in monitoring