mirror of
https://github.com/trevorsandy/ai-suite.git
synced 2026-09-27 03:55:03 +02:00
315 lines
10 KiB
Bash
315 lines
10 KiB
Bash
# Change the name of this file to .env after updating it!
|
|
|
|
############
|
|
# Generating Credentials
|
|
# OpenSSL: Available by default on Linux/Mac via command `openssl rand -hex 32`
|
|
# For Windows, use 'WSL2', 'Git Bash' terminal installed with git or from cmd
|
|
# run the command: python -c "import secrets; print(secrets.token_hex(32))"
|
|
#
|
|
# Password: Use Python command to generate 16-character strong password:
|
|
# python3 -c "import secrets;import string; alphabet = string.ascii_letters + string.digits;\
|
|
# password = ''.join(secrets.choice(alphabet) for i in range(16));\
|
|
# print(password)"
|
|
#
|
|
# JWT Tokens: Use https://jwtsecrets.com/#generator to generate keys and tokens
|
|
# ranging from 8 to 128 characters long.
|
|
############
|
|
|
|
############
|
|
# [required]
|
|
# n8n credentials - use OpenSSL for all
|
|
############
|
|
|
|
# Master key used to encrypt sensitive credentials that n8n stores
|
|
N8N_ENCRYPTION_KEY=change_me_to_a_long_super-secret-key
|
|
# Shared secret between n8n containers and runners sidecars
|
|
N8N_RUNNERS_AUTH_TOKEN=change_me_to_a_long_super-secret-key
|
|
# Specific JWT secret. By default, n8n generates one on start
|
|
N8N_USER_MANAGEMENT_JWT_SECRET=change_me_to_a_longer_even-more-secret
|
|
|
|
############
|
|
# [required]
|
|
# PostgreSQL database user password
|
|
############
|
|
|
|
POSTGRES_PASSWORD=your-super-secret-postgres-password
|
|
|
|
############
|
|
# [required]
|
|
# Supabase Secrets
|
|
|
|
# YOU MUST CHANGE THESE BEFORE GOING INTO PRODUCTION
|
|
# Read these docs for any help: https://supabase.com/docs/guides/self-hosting/docker
|
|
# For the JWT Secret and keys, see: https://supabase.com/docs/guides/self-hosting/docker#generate-api-keys
|
|
# For the other secrets, see: https://supabase.com/docs/guides/self-hosting/docker#update-secrets
|
|
# You can really decide any value for POOLER_TENANT_ID like 1000.
|
|
|
|
# Note that using special symbols (like '%') can complicate things a bit for your Postgres password.
|
|
# If you use special symbols in your Postgres password, you must remember to percent-encode your password later if using the Postgres connection string, for example, postgresql://postgres.projectref:p%3Dword@aws-0-us-east-1.pooler.supabase.com:6543/postgres
|
|
############
|
|
|
|
JWT_SECRET=your-super-secret-jwt-token-with-at-least-40-characters-long
|
|
ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJhbm9uIiwKICAgICJpc3MiOiAic3VwYWJhc2UtZGVtbyIsCiAgICAiaWF0IjogMTY0MTc2OTIwMCwKICAgICJleHAiOiAxNzk5NTM1NjAwCn0.dc_X5iR_VP_qT0zsiyj_I_OZ2T9FtRU2BBNWN8Bu4GE
|
|
SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q
|
|
DASHBOARD_USERNAME=supabase
|
|
DASHBOARD_PASSWORD=your-super-secret-password-1
|
|
POOLER_TENANT_ID=your-tenant-id
|
|
|
|
############
|
|
# [required]
|
|
# Flowise - authentication configuration
|
|
############
|
|
|
|
FLOWISE_PASSWORD=your-super-secret-postgres-password
|
|
|
|
############
|
|
# [required]
|
|
# Neo4j admin username and password
|
|
# The admin username must remain "neo4j".
|
|
# Replace "password" with your chosen password.
|
|
# Keep the "/" as a separator between the two.
|
|
############
|
|
|
|
NEO4J_AUTH=neo4j/your-super-secret-password-2
|
|
|
|
############
|
|
# [required]
|
|
# Langfuse credentials
|
|
# Each of the secret keys you can set to whatever you want, just make it secure!
|
|
# For salt, secret and encryption key, use OpenSSL command specified above
|
|
############
|
|
|
|
CLICKHOUSE_PASSWORD=your-super-secret-password-3
|
|
MINIO_ROOT_PASSWORD=your-super-secret-password-4
|
|
LANGFUSE_SALT=your-super-secret-key-1
|
|
NEXTAUTH_SECRET=your-super-secret-key-2
|
|
ENCRYPTION_KEY=your-super-secret-key-3
|
|
|
|
############
|
|
# [required for production]
|
|
# Caddy Config
|
|
|
|
# By default listen on https://localhost:[service port] and don't use an email for SSL
|
|
# To change this for production:
|
|
# Uncomment all of these environment variables for the services you want exposed
|
|
# Note that you might not want to expose Ollama or SearXNG since they aren't secured by default
|
|
# Replace the placeholder value with the host for each service (like n8n.yourdomain.com)
|
|
# Replace internal by your email (require to create a Let's Encrypt certificate)
|
|
############
|
|
|
|
# N8N_HOSTNAME=n8n.yourdomain.com
|
|
# WEBHOOK_URL=https:n8n.yourdomain.com
|
|
# WEBUI_HOSTNAME=openwebui.yourdomain.com
|
|
# FLOWISE_HOSTNAME=flowise.yourdomain.com
|
|
# SUPABASE_HOSTNAME=supabase.yourdomain.com
|
|
# LANGFUSE_HOSTNAME=langfuse.yourdomain.com
|
|
# OLLAMA_HOSTNAME=ollama.yourdomain.com
|
|
# SEARXNG_HOSTNAME=searxng.yourdomain.com
|
|
# NEO4J_HOSTNAME=neo4j.yourdomain.com
|
|
# LETSENCRYPT_EMAIL=internal
|
|
|
|
# Everything below this point is optional.
|
|
# Default values will suffice unless you need more features/customization.
|
|
|
|
#
|
|
#
|
|
#######
|
|
#####
|
|
#
|
|
|
|
############
|
|
# n8n
|
|
############
|
|
|
|
# Set as N8N_HOST=${N8N_HOSTNAME:-${N8N_HOST}} in compose.yaml
|
|
N8N_HOST=localhost
|
|
N8N_PORT=5678
|
|
|
|
# Permissions 0644 for n8n settings file /home/node/.n8n/config are too wide.
|
|
N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
|
|
# https://docs.n8n.io/hosting/configuration/task-runners/
|
|
N8N_RUNNERS_ENABLED=true
|
|
# https://docs.n8n.io/hosting/configuration/environment-variables/security/
|
|
N8N_BLOCK_ENV_ACCESS_IN_NODE=false
|
|
# https://docs.n8n.io/hosting/configuration/environment-variables/security/
|
|
N8N_GIT_NODE_DISABLE_BARE_REPOS=true
|
|
N8N_DEFAULT_BINARY_DATA_MODE=filesystem
|
|
|
|
############
|
|
# Ollama - Inferencce engine and model manager
|
|
############
|
|
|
|
# When running OLLAMA in the Host and N8N in Docker:
|
|
#OLLAMA_HOST=host.docker.internal:11434
|
|
OLLAMA_HOST=ollama:11434
|
|
|
|
# Ollama URL for Open-WebUI backend connect
|
|
# The path '/ollama' will be redirected to the specified backend URL.
|
|
# When running OLLAMA in the Host and Open-WebUI in Docker:
|
|
#OLLAMA_BASE_URL=http://host.docker.internal:11434
|
|
OLLAMA_BASE_URL=http://localhost:11434
|
|
|
|
# Set if conecting to Ollama using OpenAI API connection
|
|
#OPENAI_API_BASE_URL=http://localhost:11434
|
|
# When running OLLAMA in the Host and Open-WebUI in Docker:
|
|
#OPENAI_API_BASE_URL=http://host.docker.internal:11434
|
|
OPENAI_API_BASE_URL=
|
|
# OpenAI API key OPENAI_API_KEY declared below at Studio
|
|
|
|
# If running Open WebUI in an offline environment, set to 1 to prevent attempts to download models from the internet.
|
|
# HF_HUB_OFFLINE=1
|
|
|
|
############
|
|
# Open-WebUI
|
|
############
|
|
|
|
# For production, you should only need one host as
|
|
# fastapi serves the svelte-kit built frontend and backend from the same host and port.
|
|
#CORS_ALLOW_ORIGIN=http://localhost:8080
|
|
CORS_ALLOW_ORIGIN='*'
|
|
|
|
# For production, set this to match the proxy configuration (127.0.0.1)
|
|
#FORWARDED_ALLOW_IPS=127.0.0.1
|
|
FORWARDED_ALLOW_IPS='*'
|
|
|
|
# AUTOMATIC1111_BASE_URL="http://localhost:7860"
|
|
|
|
# Analytics and Telemetry Tracking
|
|
DO_NOT_TRACK=true
|
|
SCARF_NO_ANALYTICS=true
|
|
ANONYMIZED_TELEMETRY=false
|
|
|
|
############
|
|
# Google
|
|
# - Authentication for Supabase
|
|
# - Google Cloud Project details
|
|
# Get these values from the Google Admin Console
|
|
############
|
|
|
|
# ENABLE_GOOGLE_SIGNUP=true
|
|
# GOOGLE_CLIENT_ID=
|
|
# GOOGLE_CLIENT_SECRET=
|
|
# GOOGLE_REDIRECT_URI=
|
|
|
|
GOOGLE_PROJECT_ID=GOOGLE_PROJECT_ID
|
|
GOOGLE_PROJECT_NUMBER=GOOGLE_PROJECT_NUMBER
|
|
|
|
############
|
|
# Optional SearXNG Config
|
|
# If you run a very small or a very large instance, you might want to change the amount of used uwsgi workers and threads per worker
|
|
# More workers (= processes) means that more search requests can be handled at the same time, but it also causes more resource usage
|
|
############
|
|
|
|
# SEARXNG_UWSGI_WORKERS=4
|
|
# SEARXNG_UWSGI_THREADS=4
|
|
|
|
############
|
|
# PostgreSQL - You can change these to any PostgreSQL database that has logical replication enabled.
|
|
############
|
|
|
|
POSTGRES_DB=postgres
|
|
POSTGRES_USER=postgres
|
|
POSTGRES_HOST=postgres
|
|
POSTGRES_PORT=5432
|
|
|
|
############
|
|
# Supavisor -- Database pooler and others that can be left as default values
|
|
############
|
|
|
|
POOLER_PROXY_PORT_TRANSACTION=6543
|
|
POOLER_DEFAULT_POOL_SIZE=20
|
|
POOLER_MAX_CLIENT_CONN=100
|
|
SECRET_KEY_BASE=UpNVntn3cDxHJpq99YMc1T1AQgQpc8kfYTuRgBiYa15BLrx8etQoXz3gZv1/u2oq
|
|
VAULT_ENC_KEY=your-32-character-encryption-key
|
|
# Pool size for internal metadata storage used by Supavisor
|
|
# This is separate from client connections and used only by Supavisor itself
|
|
POOLER_DB_POOL_SIZE=5
|
|
|
|
############
|
|
# API Proxy - Configuration for the Kong Reverse proxy.
|
|
############
|
|
|
|
KONG_HTTP_PORT=8000
|
|
KONG_HTTPS_PORT=8443
|
|
|
|
############
|
|
# API - Configuration for PostgREST.
|
|
############
|
|
|
|
PGRST_DB_SCHEMAS=public,storage,graphql_public
|
|
|
|
############
|
|
# Flowise - Authentication Configuration for Flowise.
|
|
############
|
|
|
|
FLOWISE_USERNAME=ai_suite_user
|
|
|
|
############
|
|
# Auth - Configuration for the GoTrue authentication server.
|
|
############
|
|
|
|
## General
|
|
SITE_URL=http://localhost:3000
|
|
ADDITIONAL_REDIRECT_URLS=
|
|
JWT_EXPIRY=3600
|
|
DISABLE_SIGNUP=false
|
|
API_EXTERNAL_URL=http://localhost:8000
|
|
|
|
## Mailer Config
|
|
MAILER_URLPATHS_CONFIRMATION="/auth/v1/verify"
|
|
MAILER_URLPATHS_INVITE="/auth/v1/verify"
|
|
MAILER_URLPATHS_RECOVERY="/auth/v1/verify"
|
|
MAILER_URLPATHS_EMAIL_CHANGE="/auth/v1/verify"
|
|
|
|
## Email auth
|
|
ENABLE_EMAIL_SIGNUP=true
|
|
ENABLE_EMAIL_AUTOCONFIRM=true
|
|
SMTP_ADMIN_EMAIL=admin@example.com
|
|
SMTP_HOST=supabase-mail
|
|
SMTP_PORT=2500
|
|
SMTP_USER=fake_mail_user
|
|
SMTP_PASS=fake_mail_password
|
|
SMTP_SENDER_NAME=fake_sender
|
|
ENABLE_ANONYMOUS_USERS=false
|
|
|
|
## Phone auth
|
|
ENABLE_PHONE_SIGNUP=true
|
|
ENABLE_PHONE_AUTOCONFIRM=true
|
|
|
|
############
|
|
# Studio - Configuration for the Dashboard
|
|
############
|
|
|
|
STUDIO_DEFAULT_ORGANIZATION=Default Organization
|
|
STUDIO_DEFAULT_PROJECT=Default Project
|
|
|
|
STUDIO_PORT=3000
|
|
# replace if you intend to use Studio outside of localhost
|
|
SUPABASE_PUBLIC_URL=http://localhost:8000
|
|
|
|
# Enable webp support
|
|
IMGPROXY_ENABLE_WEBP_DETECTION=true
|
|
|
|
# Add your OpenAI API key to enable SQL Editor Assistant
|
|
OPENAI_API_KEY=
|
|
|
|
############
|
|
# Functions - Configuration for Functions
|
|
############
|
|
|
|
# NOTE: VERIFY_JWT applies to all functions. Per-function VERIFY_JWT is not supported yet.
|
|
FUNCTIONS_VERIFY_JWT=false
|
|
|
|
############
|
|
# Logs - Configuration for Analytics
|
|
# Please refer to https://supabase.com/docs/reference/self-hosting-analytics/introduction
|
|
############
|
|
|
|
# Change vector.toml sinks to reflect this change
|
|
# these cannot be the same value
|
|
LOGFLARE_PUBLIC_ACCESS_TOKEN=your-super-secret-and-long-logflare-key-public
|
|
LOGFLARE_PRIVATE_ACCESS_TOKEN=your-super-secret-and-long-logflare-key-private
|
|
|
|
# Docker socket location - this value will differ depending on your OS
|
|
DOCKER_SOCKET_LOCATION=/var/run/docker.sock
|