Environment VariableDescriptionDefault ValueRequiredExample
Core Configuration
PUBLIC_ORIGINPublic origin for generating complete URLs, must be set to your app’s access address-Yeshttps://app.teable.io
SECRET_KEYKey for JWT, sessions, and sharing, use a strong passworddefaultSecretKeyYesyourStrongSecretKey
PORTPort on which the application runs3000-3000
LOG_LEVELLog level, options: fatal, error, warn, info, debug, traceinfo-debug
NEXT_ENV_IMAGES_ALL_REMOTEWhether to allow loading third-party imagesfalse-true
Storage Configuration
BACKEND_STORAGE_PROVIDERStorage provider, options: local, minio, s3local-s3
BACKEND_STORAGE_S3_REGIONS3 storage region, required when BACKEND_STORAGE_PROVIDER is s3--us-east-2
BACKEND_STORAGE_S3_ENDPOINTS3 storage endpoint, required when BACKEND_STORAGE_PROVIDER is s3--https://s3.us-east-2.amazonaws.com
BACKEND_STORAGE_S3_ACCESS_KEYS3 storage access key, required when BACKEND_STORAGE_PROVIDER is s3--your_access_key
BACKEND_STORAGE_S3_SECRET_KEYS3 storage secret key, required when BACKEND_STORAGE_PROVIDER is s3--your_secret_key
BACKEND_STORAGE_MINIO_ENDPOINTMinIO storage endpoint--minio.example.com
BACKEND_STORAGE_MINIO_ACCESS_KEYMinIO access key--access-key
BACKEND_STORAGE_MINIO_SECRET_KEYMinIO secret key--secret-key
STORAGE_PREFIXStorage prefix, defaults to PUBLIC_ORIGINPUBLIC_ORIGIN-http://localhost:3000
Cache Configuration
BACKEND_CACHE_PROVIDERCache provider, options: sqlite, memory, redismemory-redis
BACKEND_CACHE_REDIS_URIRedis cache connection URI, required when BACKEND_CACHE_PROVIDER is redis--redis://default:teable@127.0.0.1:6379/0
Authentication Configuration
SOCIAL_AUTH_PROVIDERSList of social auth providers, comma-separated--github,google,oidc
BACKEND_GITHUB_CLIENT_IDGitHub OAuth client ID--github_client_id
BACKEND_GITHUB_CLIENT_SECRETGitHub OAuth client secret--github_client_secret
BACKEND_GOOGLE_CLIENT_IDGoogle OAuth client ID--google_client_id
BACKEND_GOOGLE_CLIENT_SECRETGoogle OAuth client secret--google_client_secret
BACKEND_OIDC_CLIENT_IDOIDC client ID--google_client_id
BACKEND_OIDC_CLIENT_SECRETOIDC client secret--google_client_secret
BACKEND_OIDC_CALLBACK_URLOIDC callback URL--https://app.teable.io/api/auth/oidc/callback
Email Configuration
BACKEND_MAIL_HOSTEmail server host--smtp.gmail.com
BACKEND_MAIL_PORTEmail server port--465
BACKEND_MAIL_AUTH_USEREmail server authentication username--username
BACKEND_MAIL_AUTH_PASSEmail server authentication password--usertoken
Session/JWT Configuration
BACKEND_SESSION_EXPIRES_INSession expiration time7d-7d
BACKEND_JWT_EXPIRES_INJWT expiration time20d-20d
BACKEND_RESET_PASSWORD_EMAIL_EXPIRES_INReset password email expiration time30m-30m
Resource Limits
MAX_COPY_CELLSMaximum number of cells to copy in a single request--50000
MAX_READ_ROWSMaximum number of rows to read in a single request--10000
MAX_ATTACHMENT_UPLOAD_SIZEMaximum attachment upload size (bytes)--2147483648
Feature Toggles
RECORD_HISTORY_DISABLEDWhether to disable record history, defaults to falsefalse-true
PASSWORD_LOGIN_DISABLEDWhether to disable password login (OAuth and OIDC still available)false-true
Analytics & Monitoring
MICROSOFT_CLARITY_IDMicrosoft Clarity metrics ID, for enabling Microsoft Clarity analytics--your-metrics-id
OTEL_EXPORTER_OTLP_ENDPOINTOpenTelemetry OTLP endpoint--http://jaeger:4317
Template Configuration
TEMPLATE_SPACE_IDSpace ID where template bases are located, for template center operations--your-template-space-id
TEMPLATE_SITE_LINKTemplate site link, required to enable create-from-template functionality--https://template.teable.io
Database Configuration
PRISMA_DATABASE_URLDatabase connection URL, must be configured-Yespostgresql://teable:teable@127.0.0.1:5432/teable