AppFlowy-GoTrue

AppFlowy-GoTrue

Docker app from vmalinics0's Repository

Overview

Step 4/7: GoTrue authentication service for AppFlowy Cloud — handles user sign-up, login, JWT issuance, OAuth, email magic links, and SAML. Part of the AppFlowy Cloud stack.

Requirements

Custom Docker network named "appflowy" must exist before deploying any container in this stack. Create it via SSH or the Unraid terminal: docker network create appflowy — Network Type is pre-set to "appflowy" by default, verify it is selected.

Runtime arguments

Network
custom:appflowy
Shell
sh
Privileged
false

Template configuration

Base URLVariable

Public-facing GoTrue URL. Set to http://YOUR_SERVER_IP/gotrue (or your domain with /gotrue). Must be reachable by clients for OAuth redirects.

Target
API_EXTERNAL_URL
Default
http://YOUR_SERVER_IP/gotrue
Value
http://YOUR_SERVER_IP/gotrue
Admin EmailVariable

Email address of the initial admin account created on first start.

Target
GOTRUE_ADMIN_EMAIL
Default
admin@example.com
Value
admin@example.com
Admin PasswordVariable

Password for the initial admin account.

Target
GOTRUE_ADMIN_PASSWORD
Default
changeme_admin_password
Value
changeme_admin_password
JWT SecretVariable

Shared JWT signing secret. MUST be identical to APPFLOWY_GOTRUE_JWT_SECRET in AppFlowy-Cloud. Minimum 32 characters. Keep private.

Target
GOTRUE_JWT_SECRET
Default
changeme_jwt_secret_min32chars!!
Value
changeme_jwt_secret_min32chars!!
Database URLVariable

GoTrue PostgreSQL connection string. Update user, password, and host if you changed them. Uses the auth schema.

Target
DATABASE_URL
Default
postgres://postgres:changeme_strong_password@AppFlowy-Postgres:5432/postgres?search_path=auth
Value
postgres://postgres:changeme_strong_password@AppFlowy-Postgres:5432/postgres?search_path=auth
JWT Expiry (seconds)Variable

JWT token lifetime in seconds. Default: 604800 (7 days).

Target
GOTRUE_JWT_EXP
Default
604800
Value
604800
Auto-confirm EmailVariable

Set true to skip email confirmation (recommended for initial setup). Set false to require email confirmation — you must also configure SMTP.

Target
GOTRUE_MAILER_AUTOCONFIRM
Default
true
Value
true
Disable Public SignupVariable

Set true to allow only invited users to sign up.

Target
GOTRUE_DISABLE_SIGNUP
Default
false
Value
false
Rate Limit (emails/min)Variable

Maximum emails GoTrue can send per minute.

Target
GOTRUE_RATE_LIMIT_EMAIL_SENT
Default
100
Value
100
DB DriverVariable

Database driver — always postgres.

Target
GOTRUE_DB_DRIVER
Default
postgres
Value
postgres
Site URLVariable

Deep-link scheme for the AppFlowy native app.

Target
GOTRUE_SITE_URL
Default
appflowy-flutter://
Value
appflowy-flutter://
URI Allow ListVariable

Allowed OAuth redirect URIs. ** permits all; restrict for production.

Target
GOTRUE_URI_ALLOW_LIST
Default
**
Value
**
JWT Admin GroupVariable

JWT group name for admin users.

Target
GOTRUE_JWT_ADMIN_GROUP_NAME
Default
supabase_admin
Value
supabase_admin
Internal PortVariable

GoTrue internal listen port. Do not change.

Target
PORT
Default
9999
Value
9999
Mailer Confirm PathVariable

URL path for email confirmation links.

Target
GOTRUE_MAILER_URLPATHS_CONFIRMATION
Default
/gotrue/verify
Value
/gotrue/verify
Mailer Invite PathVariable

URL path for invite links.

Target
GOTRUE_MAILER_URLPATHS_INVITE
Default
/gotrue/verify
Value
/gotrue/verify
Mailer Recovery PathVariable

URL path for password recovery links.

Target
GOTRUE_MAILER_URLPATHS_RECOVERY
Default
/gotrue/verify
Value
/gotrue/verify
Mailer Email-Change PathVariable

URL path for email-change confirmation links.

Target
GOTRUE_MAILER_URLPATHS_EMAIL_CHANGE
Default
/gotrue/verify
Value
/gotrue/verify
SMTP HostVariable

SMTP server hostname (e.g. smtp.gmail.com). Required if GOTRUE_MAILER_AUTOCONFIRM=false.

Target
GOTRUE_SMTP_HOST
SMTP PortVariable

SMTP port. Use 465 for TLS/SMTPS, 587 for STARTTLS.

Target
GOTRUE_SMTP_PORT
Default
465
Value
465
SMTP UserVariable

SMTP sender email address.

Target
GOTRUE_SMTP_USER
SMTP PasswordVariable

SMTP password.

Target
GOTRUE_SMTP_PASS
SMTP Admin EmailVariable

Admin email used as the From address.

Target
GOTRUE_SMTP_ADMIN_EMAIL
SMTP Max FrequencyVariable

Minimum interval between emails to the same address. Use 1ns for no limit.

Target
GOTRUE_SMTP_MAX_FREQUENCY
Default
1ns
Value
1ns
Magic Link Template URLVariable

Optional: public URL to a custom magic-link email HTML template.

Target
GOTRUE_MAILER_TEMPLATES_MAGIC_LINK
Google OAuth EnabledVariable

Enable Google OAuth login.

Target
GOTRUE_EXTERNAL_GOOGLE_ENABLED
Default
false
Value
false
Google Client IDVariable

Google OAuth client ID.

Target
GOTRUE_EXTERNAL_GOOGLE_CLIENT_ID
Google Client SecretVariable

Google OAuth client secret.

Target
GOTRUE_EXTERNAL_GOOGLE_SECRET
Google Redirect URIVariable

Google OAuth redirect URI.

Target
GOTRUE_EXTERNAL_GOOGLE_REDIRECT_URI
Default
http://YOUR_SERVER_IP/gotrue/callback
Value
http://YOUR_SERVER_IP/gotrue/callback
GitHub OAuth EnabledVariable

Enable GitHub OAuth login.

Target
GOTRUE_EXTERNAL_GITHUB_ENABLED
Default
false
Value
false
GitHub Client IDVariable

GitHub OAuth app client ID.

Target
GOTRUE_EXTERNAL_GITHUB_CLIENT_ID
GitHub Client SecretVariable

GitHub OAuth app client secret.

Target
GOTRUE_EXTERNAL_GITHUB_SECRET
GitHub Redirect URIVariable

GitHub OAuth redirect URI.

Target
GOTRUE_EXTERNAL_GITHUB_REDIRECT_URI
Default
http://YOUR_SERVER_IP/gotrue/callback
Value
http://YOUR_SERVER_IP/gotrue/callback
Discord OAuth EnabledVariable

Enable Discord OAuth login.

Target
GOTRUE_EXTERNAL_DISCORD_ENABLED
Default
false
Value
false
Discord Client IDVariable

Discord OAuth application client ID.

Target
GOTRUE_EXTERNAL_DISCORD_CLIENT_ID
Discord Client SecretVariable

Discord OAuth application client secret.

Target
GOTRUE_EXTERNAL_DISCORD_SECRET
Discord Redirect URIVariable

Discord OAuth redirect URI.

Target
GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI
Default
http://YOUR_SERVER_IP/gotrue/callback
Value
http://YOUR_SERVER_IP/gotrue/callback
SAML EnabledVariable

Enable SAML 2.0 single sign-on.

Target
GOTRUE_SAML_ENABLED
Default
false
Value
false
SAML Private KeyVariable

PEM-encoded private key for SAML 2.0 signing.

Target
GOTRUE_SAML_PRIVATE_KEY

Download Statistics

327,951
Total Downloads

Details

Repository
appflowyinc/gotrue:latest
Last Updated2026-05-25
First Seen2026-05-26

Run AppFlowy-GoTrue on Unraid.

AppFlowy-GoTrue is listed in Community Apps for Unraid OS. Explore Unraid to build a flexible home server, NAS, or homelab.