Production-ready deployment configurations for Docker, Kubernetes, Railway, Vercel, and more. Get G8KEPR running in under 5 minutes.
Single-command deployment with all services preconfigured. Perfect for development and small production deployments.
# docker-compose.yml
version: '3.8'
services:
postgres:
image: postgres:15
environment:
POSTGRES_DB: gatekeeper
POSTGRES_USER: admin
POSTGRES_PASSWORD: your_secure_password
volumes:
- postgres_data:/var/lib/postgresql/data
redis:
image: redis:7-alpine
command: redis-server --requirepass your_redis_password
backend:
image: g8kepr/backend:latest
environment:
DATABASE_URL: postgresql://admin:your_secure_password@postgres:5432/gatekeeper
REDIS_URL: redis://:your_redis_password@redis:6379
JWT_SECRET: your_jwt_secret_min_32_chars
STRIPE_SECRET_KEY: sk_live_...
ports:
- "8000:8000"
depends_on:
- postgres
- redis
frontend:
image: g8kepr/frontend:latest
environment:
NEXT_PUBLIC_API_URL: http://backend:8000
ports:
- "3000:3000"
depends_on:
- backend
volumes:
postgres_data:
# Deploy: docker-compose up -d
# View logs: docker-compose logs -f
# Stop: docker-compose downScalable production deployment with auto-scaling, health checks, and rolling updates.
# k8s/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: g8kepr-backend
spec:
replicas: 3
selector:
matchLabels:
app: g8kepr-backend
template:
metadata:
labels:
app: g8kepr-backend
spec:
containers:
- name: backend
image: g8kepr/backend:latest
ports:
- containerPort: 8000
env:
- name: DATABASE_URL
valueFrom:
secretKeyRef:
name: g8kepr-secrets
key: database-url
- name: REDIS_URL
valueFrom:
secretKeyRef:
name: g8kepr-secrets
key: redis-url
resources:
requests:
memory: "512Mi"
cpu: "250m"
limits:
memory: "1Gi"
cpu: "500m"
livenessProbe:
httpGet:
path: /health
port: 8000
initialDelaySeconds: 30
periodSeconds: 10
readinessProbe:
httpGet:
path: /health
port: 8000
initialDelaySeconds: 5
periodSeconds: 5
---
apiVersion: v1
kind: Service
metadata:
name: g8kepr-backend
spec:
selector:
app: g8kepr-backend
ports:
- port: 8000
targetPort: 8000
type: LoadBalancer
# Deploy: kubectl apply -f k8s/
# Scale: kubectl scale deployment g8kepr-backend --replicas=5Deploy to Railway with automatic PostgreSQL, Redis, and SSL certificates. Zero DevOps required.
Deploy to Digital Ocean with managed database and load balancing. Starts at $5/month.
# .do/app.yaml
name: g8kepr
services:
- name: backend
github:
repo: yourusername/g8kepr
branch: main
deploy_on_push: true
build_command: cd backend && pip install -r requirements.txt
run_command: cd backend && uvicorn main:app --host 0.0.0.0 --port 8000
envs:
- key: DATABASE_URL
scope: RUN_TIME
type: SECRET
- key: REDIS_URL
scope: RUN_TIME
type: SECRET
- key: JWT_SECRET
scope: RUN_TIME
type: SECRET
http_port: 8000
instance_count: 2
instance_size_slug: basic-xs
- name: frontend
github:
repo: yourusername/g8kepr
branch: main
build_command: cd frontend && npm install && npm run build
run_command: cd frontend && npm start
envs:
- key: NEXT_PUBLIC_API_URL
value: ${backend.PUBLIC_URL}
http_port: 3000
instance_count: 1
instance_size_slug: basic-xs
databases:
- name: postgres
engine: PG
version: "15"
- name: redis
engine: REDIS
version: "7"DATABASE_URL=postgresql://user:pass@host:5432/db
REDIS_URL=redis://user:pass@host:6379
JWT_SECRET=your_random_32char_secret_key
JWT_ALGORITHM=HS256
STRIPE_SECRET_KEY=sk_live_...
STRIPE_PUBLISHABLE_KEY=pk_live_...
FRONTEND_URL=https://yourdomain.com
CORS_ORIGINS=https://yourdomain.comNEXT_PUBLIC_API_URL=https://api.yourdomain.com
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_live_...Get the complete deployment template package with all configurations
Our team can help you deploy G8KEPR to your infrastructure with custom configurations.