Skip to main content

Environment Variables

TGO uses environment variables to configure various services. This page introduces the main configuration files and commonly used environment variables.

Configuration File Structure​

TGO configuration is divided into two layers:

tgo/
├── .env # Global configuration (ports, host, etc.)
└── envs/ # Individual service configurations
├── tgo-api.env
├── tgo-ai.env
├── tgo-rag.env
├── tgo-platform.env
├── tgo-web.env
├── tgo-widget-app.env
└── wukongim.env

Global Configuration (.env)​

The .env file in the root directory contains global configuration:

VariableDescriptionDefault
SERVER_HOSTServer address (IP or domain)Auto-detected
VITE_API_BASE_URLFrontend API addresshttp://localhost
NGINX_PORTHTTP port80
NGINX_SSL_PORTHTTPS port443
POSTGRES_DBDatabase nametgo
POSTGRES_USERDatabase usertgo
POSTGRES_PASSWORDDatabase passwordtgo

Modifying Global Configuration​

Edit the .env file directly:

vi .env

Restart services after modification:

./tgo.sh down
./tgo.sh up

Service Configuration (envs/)​

tgo-api.env​

API service configuration:

VariableDescriptionDefault
SECRET_KEYJWT secret (auto-generated)-
PORTService port8000
REDIS_URLRedis connection URLredis://redis:6379/0
API_BASE_URLPublic API URLhttp://localhost:8000
MAX_FILE_SIZEMax file upload size10485760 (10MB)

tgo-ai.env​

AI service configuration:

VariableDescriptionDefault
PORTService port8081
LOG_LEVELLog levelDEBUG
API_SERVICE_URLAPI service URLhttp://tgo-api:8001
RAG_SERVICE_URLRAG service URLhttp://tgo-rag:8082
MCP_SERVICE_URLMCP service URLhttp://tgo-mcp-v4:8084

Configuration Best Practices​

1. Don't Modify Template Directories​

envs.docker/ and envs.example/ are template directories. During installation, they are automatically copied to envs/. Only modify files in envs/.

2. SECRET_KEY Security​

SECRET_KEY is auto-generated during first installation. If setting manually, ensure:

  • At least 32 characters
  • Use random string
  • Don't use default values

Generate a new key:

openssl rand -hex 32

3. Production Configuration​

For production, we recommend modifying:

# .env
POSTGRES_PASSWORD=<strong-password>

# envs/tgo-api.env
SECRET_KEY=<random-key>
LOG_LEVEL=INFO

4. Restart After Changes​

Restart services after any configuration changes:

# Restart all services
./tgo.sh down
./tgo.sh up

# Or restart specific service
docker compose restart tgo-api