Deploy to Temps
Deploy applications to Temps with automatic framework detection and optimized builds.
Supported Frameworks
| Framework | Detection | Build Command |
|---|---|---|
| Next.js | next.config.* | next build |
| Vite | vite.config.* | vite build |
| Create React App | react-scripts in package.json | react-scripts build |
| Remix | remix.config.* | remix build |
| Express/Node.js | express in dependencies | npm run build (if exists) |
| NestJS | @nestjs/core in dependencies | nest build |
| Python/Flask | requirements.txt + app.py | - |
| Python/Django | manage.py | python manage.py collectstatic |
| Go | go.mod | go build |
| Rust | Cargo.toml | cargo build --release |
Quick Deploy
Via Git Integration
- Connect your Git provider in Temps dashboard
- Select repository and branch
- Temps auto-detects framework and deploys
Via CLI
bash# Install Temps CLI npm install -g @temps-sdk/cli # Login temps login # Deploy current directory temps deploy # Deploy with specific settings temps deploy --project my-app --branch main
Dockerfile Generation
Temps auto-generates optimized Dockerfiles. For custom needs:
Next.js (Standalone)
dockerfileFROM node:20-alpine AS base FROM base AS deps WORKDIR /app COPY package*.json ./ RUN npm ci FROM base AS builder WORKDIR /app COPY --from=deps /app/node_modules ./node_modules COPY . . RUN npm run build FROM base AS runner WORKDIR /app ENV NODE_ENV=production RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs COPY --from=builder /app/public ./public COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./ COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static USER nextjs EXPOSE 3000 ENV PORT=3000 CMD ["node", "server.js"]
Node.js (Express/Fastify)
dockerfileFROM node:20-alpine WORKDIR /app COPY package*.json ./ RUN npm ci --only=production COPY . . ENV NODE_ENV=production USER node EXPOSE 3000 CMD ["node", "dist/index.js"]
Python (Flask/FastAPI)
dockerfileFROM python:3.11-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . ENV PYTHONUNBUFFERED=1 EXPOSE 8000 CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:8000", "app:app"]
Go
dockerfileFROM golang:1.21-alpine AS builder WORKDIR /app COPY go.mod go.sum ./ RUN go mod download COPY . . RUN CGO_ENABLED=0 GOOS=linux go build -o main . FROM alpine:latest RUN apk --no-cache add ca-certificates WORKDIR /root/ COPY --from=builder /app/main . EXPOSE 8080 CMD ["./main"]
Environment Variables
Configure in Temps dashboard or via CLI:
bash# Set environment variable temps env set DATABASE_URL="postgres://..." # Set from .env file temps env import .env # List variables temps env list
Build Configuration
Create temps.json in project root:
json{ "name": "my-app", "framework": "nextjs", "buildCommand": "npm run build", "installCommand": "npm ci", "outputDirectory": ".next", "nodeVersion": "20", "env": { "NODE_ENV": "production" } }
Git-based Deployments
Auto-deploy on Push
- In Temps dashboard, enable "Auto-deploy"
- Select branches to auto-deploy
- Each push triggers a new deployment
Preview Deployments
Enable "Preview deployments" to create unique URLs for each PR.
Deploy Hooks
Create webhooks for custom CI/CD:
bashcurl -X POST https://your-temps.com/api/projects/123/deploy \ -H "Authorization: Bearer $TEMPS_DEPLOY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"branch": "main", "commit": "abc123"}'
Rollbacks
bash# List deployments temps deployments list # Rollback to specific deployment temps rollback --deployment-id 456 # Rollback to previous temps rollback --previous
Health Checks
Configure health checks in temps.json:
json{ "healthCheck": { "path": "/api/health", "interval": 30, "timeout": 10, "unhealthyThreshold": 3 } }
Resource Configuration
json{ "resources": { "cpu": "0.5", "memory": "512Mi", "replicas": { "min": 1, "max": 5 } } }
Troubleshooting
Build fails?
- Check build logs in dashboard
- Verify
buildCommandis correct - Ensure all dependencies are in package.json
Container won't start?
- Check
PORTenvironment variable is used - Verify health check endpoint works
- Review container logs
Deployment stuck?
- Check resource limits aren't exceeded
- Verify Docker image builds locally
- Review deployment logs


