🚢 Deployment & Infrastructure

Deployment Overview

Ever Gauzy supports multiple deployment strategies from simple Docker containers to full Kubernetes orchestration.

Deployment Options

MethodComplexityBest For
Docker Compose⭐Development, small teams
Docker + Nginx⭐⭐Single-server production
Kubernetes⭐⭐⭐Scalable production
DigitalOcean⭐⭐Managed cloud hosting
AWS⭐⭐⭐Enterprise cloud
Terraform⭐⭐⭐Infrastructure as Code
Pulumi⭐⭐⭐Infrastructure as Code (TypeScript)

Architecture

Diagram; its source is available below
Diagram source
graph TB
    LB["Load Balancer"] --> WebApp["Web App (Angular)"]
    LB --> API["API (NestJS)"]
    LB --> Desktop["Desktop Server"]
    WebApp & API & Desktop --> PG["PostgreSQL"]
    WebApp & API & Desktop --> Redis["Redis"]
    WebApp & API & Desktop --> S3["Minio/S3"]

Container Images

ImageDescriptionPort
ghcr.io/ever-co/gauzy-apiBackend API server3000
ghcr.io/ever-co/gauzy-webappAngular web app4200
ghcr.io/ever-co/gauzy-api-demoDemo API (seeded)3000
ghcr.io/ever-co/gauzy-webapp-demoDemo webapp4200

Minimum Requirements

Development

ResourceMinimum
CPU2 cores
RAM4 GB
Disk10 GB
Node.js18+

Production

ResourceMinimumRecommended
CPU2 cores4+ cores
RAM4 GB8+ GB
Disk20 GB50+ GB
DatabasePostgreSQL 14+PostgreSQL 16

Environment Variables

Critical production environment variables:

# Application
NODE_ENV=production
API_BASE_URL=https://api.yourdomain.com
CLIENT_BASE_URL=https://app.yourdomain.com

# Database
DB_TYPE=postgres
DB_HOST=your-db-host
DB_PORT=5432
DB_NAME=gauzy
DB_USER=gauzy_user
DB_PASS=secure-password
DB_SSL_MODE=true

# Security
JWT_SECRET=your-very-secure-jwt-secret
JWT_REFRESH_TOKEN_SECRET=your-refresh-secret

# File Storage
FILE_PROVIDER=S3
AWS_ACCESS_KEY_ID=your-key
AWS_SECRET_ACCESS_KEY=your-secret
AWS_S3_BUCKET=your-bucket
AWS_REGION=us-east-1

Edit this page

Copyright © 2023-Present Ever Co. LTD.Docs by Sourcey