BuildBaseBuildBase

Configuration

All environment variables for the BuildBase tenant server.

Environment Variables

Required

VariableDescription
NODE_ENVSet to production
PORTServer port (default: 3000)
MONGO_CONNECTION_URLMongoDB connection string
REDIS_HOSTRedis hostname
REDIS_PORTRedis port (default: 6379)
CENTRAL_SERVER_URLCentral server URL (provided in setup wizard)
ORG_IDSYour organization ID (provided in setup wizard)
SERVER_URLPublic URL of this server
APPLICATION_URLURL of your frontend app
JWT_PASSJWT signing secret
DB_ENCRYPTION_KEYDatabase field encryption key
SECRET_KEYGeneral application secret
OAUTH2_SECRETOAuth2 token secret
INTERNAL_API_KEYService-to-service auth key

CORS

VariableDescription
CORS_WHITELISTED_DOMAINSComma-separated list of allowed origins

The dashboard origins (console.buildbase.app) are always allowed by default.

Redis

VariableDescriptionDefault
REDIS_HOSTHostnamelocalhost
REDIS_PORTPort6379
REDIS_PASSWORDPassword (if required)
REDIS_DBDatabase number0

Optional Services

VariableDescription
GOOGLE_AUTH_CLIENT_IDGoogle OAuth client ID (for Google vendor + Gmail sender)
GOOGLE_AUTH_CLIENT_SECRETGoogle OAuth client secret
GOOGLE_STORAGE_ASSETS_BUCKET_NAMEGCS bucket for file uploads
MAILGUN_API_KEYMailgun API key (for transactional emails)

Generating Secrets

All secret values should be unique, random strings. Generate them with:

openssl rand -hex 32

Or generate all required secrets at once:

for i in JWT_PASS DB_ENCRYPTION_KEY SECRET_KEY OAUTH2_SECRET INTERNAL_API_KEY; do echo "$i=$(openssl rand -hex 32)"; done

Docker Image

PropertyValue
Imagebuildbaseapp/tenant-server
RegistryDocker Hub
Platformlinux/amd64
BaseNode.js 20 Alpine
Port3000
Health checkGET /api/ready
Signal handlingGraceful shutdown via dumb-init

Architecture

Dashboard (console.buildbase.app)
    |
    |  API calls (HTTPS)
    v
Your Tenant Server (your infrastructure)
    |
    |-- MongoDB (your data)
    |-- Redis (sessions, queues, cache)
    |
    |  ES256 signed tokens
    v
Central Server (central.console.buildbase.app)
    |-- Organization management
    |-- Authentication
    |-- Key management

Your data never leaves your infrastructure. The central server only handles authentication tokens and organization metadata.