166 lines
6.4 KiB
Bash
166 lines
6.4 KiB
Bash
# This file is a template for docker compose deployment
|
|
# Copy this file to .env and change the values as needed
|
|
|
|
# PostgreSQL Settings
|
|
POSTGRES_HOST=postgres
|
|
POSTGRES_USER=postgres
|
|
POSTGRES_PASSWORD=changepassword
|
|
POSTGRES_PORT=5432
|
|
POSTGRES_DB=postgres
|
|
|
|
# Supabase user settings
|
|
SUPABASE_PASSWORD=root
|
|
|
|
# Redis Settings
|
|
REDIS_HOST=redis
|
|
REDIS_PORT=6379
|
|
|
|
# AppFlowy Cloud
|
|
## URL that connects to the gotrue docker container
|
|
APPFLOWY_GOTRUE_BASE_URL=http://gotrue:9999
|
|
## URL that connects to the postgres docker container
|
|
APPFLOWY_DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
|
|
APPFLOWY_ACCESS_CONTROL=true
|
|
APPFLOWY_WEBSOCKET_MAILBOX_SIZE=6000
|
|
APPFLOWY_DATABASE_MAX_CONNECTIONS=40
|
|
## URL that connects to the redis docker container
|
|
APPFLOWY_REDIS_URI=redis://${REDIS_HOST}:${REDIS_PORT}
|
|
|
|
# admin frontend
|
|
## URL that connects to redis docker container
|
|
ADMIN_FRONTEND_REDIS_URL=redis://${REDIS_HOST}:${REDIS_PORT}
|
|
## URL that connects to gotrue docker container
|
|
ADMIN_FRONTEND_GOTRUE_URL=http://gotrue:9999
|
|
|
|
# authentication key, change this and keep the key safe and secret
|
|
# self defined key, you can use any string
|
|
GOTRUE_JWT_SECRET=hello456
|
|
# Expiration time in seconds for the JWT token
|
|
GOTRUE_JWT_EXP=7200
|
|
|
|
# User sign up will automatically be confirmed if this is set to true.
|
|
# If you have OAuth2 set up or smtp configured, you can set this to false
|
|
# to enforce email confirmation or OAuth2 login instead.
|
|
# If you set this to false, you need to either set up SMTP
|
|
GOTRUE_MAILER_AUTOCONFIRM=true
|
|
# Number of emails that can be per minute
|
|
GOTRUE_RATE_LIMIT_EMAIL_SENT=100
|
|
|
|
# If you intend to use mail confirmation, you need to set the SMTP configuration below
|
|
# You would then need to set GOTRUE_MAILER_AUTOCONFIRM=false
|
|
# Check for logs in gotrue service if there are any issues with email confirmation
|
|
# Note that smtps will be used for port 465, otherwise plain smtp with optional STARTTLS
|
|
GOTRUE_SMTP_HOST=smtp.gmail.com
|
|
GOTRUE_SMTP_PORT=465
|
|
GOTRUE_SMTP_USER=email_sender@some_company.com
|
|
GOTRUE_SMTP_PASS=email_sender_password
|
|
GOTRUE_SMTP_ADMIN_EMAIL=comp_admin@some_company.com
|
|
|
|
# This user will be created when AppFlowy Cloud starts successfully
|
|
# You can use this user to login to the admin panel
|
|
GOTRUE_ADMIN_EMAIL=admin@example.com
|
|
GOTRUE_ADMIN_PASSWORD=password
|
|
|
|
# User will be redirected to this after Email or OAuth login
|
|
# Change this to your own domain where you host the docker-compose or gotrue
|
|
# If you are using a different domain, you need to change the redirect_uri in the OAuth2 configuration
|
|
# Make sure that this domain is accessible to the user
|
|
# Make sure no endswith /
|
|
API_EXTERNAL_URL=http://your-host
|
|
|
|
# In docker environment, `postgres` is the hostname of the postgres service
|
|
# GoTrue connect to postgres using this url
|
|
GOTRUE_DATABASE_URL=postgres://supabase_auth_admin:${SUPABASE_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
|
|
|
|
# Refer to this for details: https://github.com/AppFlowy-IO/AppFlowy-Cloud/blob/main/doc/AUTHENTICATION.md
|
|
# Google OAuth2
|
|
GOTRUE_EXTERNAL_GOOGLE_ENABLED=false
|
|
GOTRUE_EXTERNAL_GOOGLE_CLIENT_ID=
|
|
GOTRUE_EXTERNAL_GOOGLE_SECRET=
|
|
GOTRUE_EXTERNAL_GOOGLE_REDIRECT_URI=${API_EXTERNAL_URL}/gotrue/callback
|
|
# GitHub OAuth2
|
|
GOTRUE_EXTERNAL_GITHUB_ENABLED=false
|
|
GOTRUE_EXTERNAL_GITHUB_CLIENT_ID=
|
|
GOTRUE_EXTERNAL_GITHUB_SECRET=
|
|
GOTRUE_EXTERNAL_GITHUB_REDIRECT_URI=${API_EXTERNAL_URL}/gotrue/callback
|
|
# Discord OAuth2
|
|
GOTRUE_EXTERNAL_DISCORD_ENABLED=false
|
|
GOTRUE_EXTERNAL_DISCORD_CLIENT_ID=
|
|
GOTRUE_EXTERNAL_DISCORD_SECRET=
|
|
GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI=${API_EXTERNAL_URL}/gotrue/callback
|
|
# Apple OAuth2
|
|
GOTRUE_EXTERNAL_APPLE_ENABLED=false
|
|
GOTRUE_EXTERNAL_APPLE_CLIENT_ID=
|
|
GOTRUE_EXTERNAL_APPLE_SECRET=
|
|
GOTRUE_EXTERNAL_APPLE_REDIRECT_URI=${API_EXTERNAL_URL}/gotrue/callback
|
|
|
|
# File Storage
|
|
# Create the bucket if not exists on AppFlowy Cloud start up.
|
|
# Set this to false if the bucket has been created externally.
|
|
APPFLOWY_S3_CREATE_BUCKET=true
|
|
# This is where storage like images, files, etc. will be stored.
|
|
# By default, Minio is used as the default file storage which uses host's file system.
|
|
# Keep this as true if you are using other S3 compatible storage provider other than AWS.
|
|
APPFLOWY_S3_USE_MINIO=true
|
|
APPFLOWY_S3_MINIO_URL=http://minio:9000 # change this if you are using a different address for minio
|
|
APPFLOWY_S3_ACCESS_KEY=minioadmin
|
|
APPFLOWY_S3_SECRET_KEY=minioadmin
|
|
APPFLOWY_S3_BUCKET=appflowy
|
|
#APPFLOWY_S3_REGION=us-east-1
|
|
|
|
# AppFlowy Cloud Mailer
|
|
# Note that smtps (TLS) is always required, even for ports other than 465
|
|
APPFLOWY_MAILER_SMTP_HOST=smtp.gmail.com
|
|
APPFLOWY_MAILER_SMTP_PORT=465
|
|
APPFLOWY_MAILER_SMTP_USERNAME=email_sender@some_company.com
|
|
APPFLOWY_MAILER_SMTP_EMAIL=email_sender@some_company.com
|
|
APPFLOWY_MAILER_SMTP_PASSWORD=email_sender_password
|
|
|
|
# Log level for the appflowy-cloud service
|
|
RUST_LOG=info
|
|
|
|
# PgAdmin
|
|
# Optional module to manage the postgres database
|
|
# You can access the pgadmin at http://your-host/pgadmin
|
|
# Refer to the APPFLOWY_DATABASE_URL for password when connecting to the database
|
|
PGADMIN_DEFAULT_EMAIL=admin@example.com
|
|
PGADMIN_DEFAULT_PASSWORD=password
|
|
|
|
# Portainer (username: admin)
|
|
PORTAINER_PASSWORD=password1234
|
|
|
|
# Cloudflare tunnel token
|
|
CLOUDFLARE_TUNNEL_TOKEN=
|
|
|
|
# NGINX
|
|
# Optional, change this if you want to use custom ports to expose AppFlowy
|
|
NGINX_PORT=80
|
|
NGINX_TLS_PORT=443
|
|
|
|
# If you are using a different postgres database, change the following values
|
|
# GOTRUE_DATABASE_URL=postgres://supabase_auth_admin:root@<host>:<port>/$POSTGRES_DB
|
|
# APPFLOWY_DATABASE_URL=postgres://POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST:5432/$POSTGRES_DB
|
|
|
|
# AppFlowy AI
|
|
APPFLOWY_AI_OPENAI_API_KEY=
|
|
APPFLOWY_AI_SERVER_PORT=5001
|
|
APPFLOWY_AI_SERVER_HOST=ai
|
|
APPFLOWY_AI_DATABASE_URL=postgresql+psycopg://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
|
|
APPFLOWY_AI_REDIS_URL=redis://${REDIS_HOST}:${REDIS_PORT}
|
|
APPFLOWY_LOCAL_AI_TEST_ENABLED=false
|
|
|
|
# AppFlowy Indexer
|
|
APPFLOWY_INDEXER_ENABLED=true
|
|
APPFLOWY_INDEXER_DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
|
|
APPFLOWY_INDEXER_REDIS_URL=redis://${REDIS_HOST}:${REDIS_PORT}
|
|
|
|
# AppFlowy Collaborate
|
|
APPFLOWY_COLLABORATE_MULTI_THREAD=false
|
|
APPFLOWY_COLLABORATE_REMOVE_BATCH_SIZE=100
|
|
|
|
# AppFlowy Worker
|
|
APPFLOWY_WORKER_REDIS_URL=redis://${REDIS_HOST}:${REDIS_PORT}
|
|
APPFLOWY_WORKER_DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
|
|
|
|
# AppFlowy Web
|
|
APPFLOWY_WEB_URL=http://localhost:3000 |