| name | deploy-to-temps |
| description | Deploy applications to the Temps platform with automatic framework detection, Dockerfile generation, and container orchestration. Supports Next.js, Vite, React, Node.js, Python, Go, Rust, Java, and C# applications. Use when the user wants to: (1) Deploy their app to Temps, (2) Set up CI/CD with Temps, (3) Configure deployment settings, (4) Create a Dockerfile for Temps, (5) Deploy a containerized application, (6) Set up automatic deployments from Git. Triggers: "deploy to temps", "temps deployment", "push to temps", "containerize for temps", "temps ci/cd".
|
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
npm install -g @temps-sdk/cli
temps login
temps deploy
temps deploy --project my-app --branch main
Dockerfile Generation
Temps auto-generates optimized Dockerfiles. For custom needs:
Next.js (Standalone)
FROM 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)
FROM 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)
FROM 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
FROM 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:
temps env set DATABASE_URL="postgres://..."
temps env import .env
temps env list
Build Configuration
Create temps.json in project root:
{
"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:
curl -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
temps deployments list
temps rollback --deployment-id 456
temps rollback --previous
Health Checks
Configure health checks in temps.json:
{
"healthCheck": {
"path": "/api/health",
"interval": 30,
"timeout": 10,
"unhealthyThreshold": 3
}
}
Resource Configuration
{
"resources": {
"cpu": "0.5",
"memory": "512Mi",
"replicas": {
"min": 1,
"max": 5
}
}
}
Troubleshooting
Build fails?
- Check build logs in dashboard
- Verify
buildCommand is correct
- Ensure all dependencies are in package.json
Container won't start?
- Check
PORT environment 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