Add configuration files for outline and firewall services
This commit is contained in:
File diff suppressed because one or more lines are too long
60
outline/domain-outline.json
Normal file
60
outline/domain-outline.json
Normal file
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"main": {
|
||||
"SERVICE_NAME": "outline",
|
||||
"DOMAIN": "#DOMAIN"
|
||||
},
|
||||
"containers": [
|
||||
{
|
||||
"IMAGE": "safebox/domain-check",
|
||||
"UPDATE": "true",
|
||||
"MEMORY": "64M",
|
||||
"NAME": "domain_checker",
|
||||
"ROLES": "domain_checker",
|
||||
"NETWORK": "host",
|
||||
"SELECTOR": "",
|
||||
"SCALE": "0",
|
||||
"EXTRA": "--rm --privileged",
|
||||
"PRE_START": [],
|
||||
"DEPEND": [],
|
||||
"POST_START": [],
|
||||
"CMD": "",
|
||||
"ENVS": [
|
||||
{
|
||||
"PROXY": "smarthostloadbalancer"
|
||||
},
|
||||
{
|
||||
"TARGET": "outline-app"
|
||||
},
|
||||
{
|
||||
"PORT": "3000"
|
||||
},
|
||||
{
|
||||
"DOMAIN": "#DOMAIN"
|
||||
},
|
||||
{
|
||||
"SMARTHOST_PROXY_PATH": "/smarthost-domains"
|
||||
},
|
||||
{
|
||||
"OPERATION": "CREATE"
|
||||
}
|
||||
],
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/etc/user/config/smarthost-domains",
|
||||
"DEST": "/smarthost-domains",
|
||||
"TYPE": "rw"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/etc/system/data/dns/hosts.local",
|
||||
"DEST": "/etc/dns/hosts.local",
|
||||
"TYPE": "ro"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/var/run/docker.sock",
|
||||
"DEST": "/var/run/docker.sock",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
75
outline/firewall-outline-dns.json
Normal file
75
outline/firewall-outline-dns.json
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"main": {
|
||||
"SERVICE_NAME": "firewalls",
|
||||
"DOMAIN": "null"
|
||||
},
|
||||
"containers": [
|
||||
{
|
||||
"IMAGE": "safebox/firewall",
|
||||
"NAME": "firewall",
|
||||
"MEMORY": "64M",
|
||||
"NETWORK": "host",
|
||||
"SCALE": "0",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/run/",
|
||||
"DEST": "/run/",
|
||||
"TYPE": "rw"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/etc/user/config/services",
|
||||
"DEST": "/services",
|
||||
"TYPE": "ro"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/etc/system/data/dns/hosts.local",
|
||||
"DEST": "/etc/dns/hosts.local",
|
||||
"TYPE": "ro"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/var/run/docker.sock",
|
||||
"DEST": "/var/run/docker.sock",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"PORTS": [],
|
||||
"READYNESS": [
|
||||
{
|
||||
"tcp": ""
|
||||
},
|
||||
{
|
||||
"HTTP": ""
|
||||
},
|
||||
{
|
||||
"EXEC": "/ready.sh"
|
||||
}
|
||||
],
|
||||
"ENVS": [
|
||||
{
|
||||
"CHAIN": "DOCKER-USER"
|
||||
},
|
||||
{
|
||||
"SOURCE": "coredns"
|
||||
},
|
||||
{
|
||||
"TARGET": "outline-app"
|
||||
},
|
||||
{
|
||||
"TYPE": "udp"
|
||||
},
|
||||
{
|
||||
"TARGET_PORT": "53"
|
||||
},
|
||||
{
|
||||
"COMMENT": "dns for outline"
|
||||
}
|
||||
],
|
||||
"EXTRA": "--privileged --rm",
|
||||
"DEPEND": "null",
|
||||
"START_ON_BOOT": "false",
|
||||
"CMD": "null",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
}
|
||||
]
|
||||
}
|
||||
75
outline/firewall-outline-smtp.json
Normal file
75
outline/firewall-outline-smtp.json
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"main": {
|
||||
"SERVICE_NAME": "firewalls",
|
||||
"DOMAIN": "null"
|
||||
},
|
||||
"containers": [
|
||||
{
|
||||
"IMAGE": "safebox/firewall",
|
||||
"NAME": "firewall",
|
||||
"MEMORY": "64M",
|
||||
"NETWORK": "host",
|
||||
"SCALE": "0",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/run/",
|
||||
"DEST": "/run/",
|
||||
"TYPE": "rw"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/etc/user/config/services",
|
||||
"DEST": "/services",
|
||||
"TYPE": "ro"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/etc/system/data/dns/hosts.local",
|
||||
"DEST": "/etc/dns/hosts.local",
|
||||
"TYPE": "ro"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/var/run/docker.sock",
|
||||
"DEST": "/var/run/docker.sock",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"PORTS": [],
|
||||
"READYNESS": [
|
||||
{
|
||||
"tcp": ""
|
||||
},
|
||||
{
|
||||
"HTTP": ""
|
||||
},
|
||||
{
|
||||
"EXEC": "/ready.sh"
|
||||
}
|
||||
],
|
||||
"ENVS": [
|
||||
{
|
||||
"CHAIN": "DOCKER-USER"
|
||||
},
|
||||
{
|
||||
"SOURCE": "outline-app"
|
||||
},
|
||||
{
|
||||
"TARGET": "smtp"
|
||||
},
|
||||
{
|
||||
"TYPE": "tcp"
|
||||
},
|
||||
{
|
||||
"TARGET_PORT": "25"
|
||||
},
|
||||
{
|
||||
"COMMENT": "smtp for openproject"
|
||||
}
|
||||
],
|
||||
"EXTRA": "--privileged --rm",
|
||||
"DEPEND": "null",
|
||||
"START_ON_BOOT": "false",
|
||||
"CMD": "null",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
}
|
||||
]
|
||||
}
|
||||
75
outline/firewall-outline.json
Normal file
75
outline/firewall-outline.json
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"main": {
|
||||
"SERVICE_NAME": "firewalls",
|
||||
"DOMAIN": "null"
|
||||
},
|
||||
"containers": [
|
||||
{
|
||||
"IMAGE": "safebox/firewall",
|
||||
"NAME": "firewall",
|
||||
"MEMORY": "64M",
|
||||
"NETWORK": "host",
|
||||
"SCALE": "0",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/run/",
|
||||
"DEST": "/run/",
|
||||
"TYPE": "rw"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/etc/user/config/services",
|
||||
"DEST": "/services",
|
||||
"TYPE": "ro"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/etc/system/data/dns/hosts.local",
|
||||
"DEST": "/etc/dns/hosts.local",
|
||||
"TYPE": "ro"
|
||||
},
|
||||
{
|
||||
"SOURCE": "/var/run/docker.sock",
|
||||
"DEST": "/var/run/docker.sock",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"PORTS": [],
|
||||
"READYNESS": [
|
||||
{
|
||||
"tcp": ""
|
||||
},
|
||||
{
|
||||
"HTTP": ""
|
||||
},
|
||||
{
|
||||
"EXEC": "/ready.sh"
|
||||
}
|
||||
],
|
||||
"ENVS": [
|
||||
{
|
||||
"CHAIN": "DOCKER-USER"
|
||||
},
|
||||
{
|
||||
"SOURCE": "smarthostbackend"
|
||||
},
|
||||
{
|
||||
"TARGET": "outline-app"
|
||||
},
|
||||
{
|
||||
"TYPE": "tcp"
|
||||
},
|
||||
{
|
||||
"TARGET_PORT": "3000"
|
||||
},
|
||||
{
|
||||
"COMMENT": "proxy for outline"
|
||||
}
|
||||
],
|
||||
"EXTRA": "--privileged --rm",
|
||||
"DEPEND": "null",
|
||||
"START_ON_BOOT": "false",
|
||||
"CMD": "null",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
}
|
||||
]
|
||||
}
|
||||
37
outline/outline-secret.json
Normal file
37
outline/outline-secret.json
Normal file
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"outlinepostgres": {
|
||||
"POSTGRES_DB": "#DB_NAME",
|
||||
"POSTGRES_USER": "#DB_USER",
|
||||
"POSTGRES_PASSWORD": "#DB_PASSWORD"
|
||||
},
|
||||
"outlineapp": {
|
||||
"SECRET_KEY": "#SECRET_KEY",
|
||||
"UTILS_SECRET": "#UTILS_SECRET",
|
||||
"DATABASE_URL": "postgres://#DB_USER:#DB_PASSWORD@outlinepostgres-db:5432/#DB_NAME",
|
||||
"SLACK_CLIENT_ID": "#SLACK_CLIENT_ID",
|
||||
"SLACK_CLIENT_SECRET": "#SLACK_CLIENT_SECRET",
|
||||
"GOOGLE_CLIENT_ID": "#GOOGLE_CLIENT_ID",
|
||||
"GOOGLE_CLIENT_SECRET": "#GOOGLE_CLIENT_SECRET",
|
||||
"AZURE_CLIENT_ID": "#AZURE_CLIENT_ID",
|
||||
"AZURE_CLIENT_SECRET": "#AZURE_CLIENT_SECRET",
|
||||
"AZURE_RESOURCE_APP_ID": "#AZURE_RESOURCE_APP_ID",
|
||||
"DISCORD_CLIENT_ID": "#DISCORD_CLIENT_ID",
|
||||
"DISCORD_CLIENT_SECRET": "#DISCORD_CLIENT_SECRET",
|
||||
"DISCORD_SERVER_ID": "#DISCORD_SERVER_ID",
|
||||
"OIDC_CLIENT_ID": "#OIDC_CLIENT_ID",
|
||||
"OIDC_CLIENT_SECRET": "#OIDC_CLIENT_SECRET",
|
||||
"OIDC_AUTH_URI": "#OIDC_AUTH_URI",
|
||||
"OIDC_TOKEN_URI": "#OIDC_TOKEN_URI",
|
||||
"OIDC_USERINFO_URI": "#OIDC_USERINFO_URI",
|
||||
"OIDC_LOGOUT_URI": "#OIDC_LOGOUT_URI",
|
||||
"OIDC_USERNAME_CLAIM": "#OIDC_USERNAME_CLAIM",
|
||||
"OIDC_DISPLAY_NAME": "#OIDC_DISPLAY_NAME",
|
||||
"OIDC_SCOPES": "#OIDC_SCOPES",
|
||||
"SMTP_HOST": "#SMTP_HOST",
|
||||
"SMTP_PORT": "#SMTP_PORT",
|
||||
"SMTP_SERVICE": "#SMTP_SERVICE",
|
||||
"SMTP_USERNAME": "#SMTP_USERNAME",
|
||||
"SMTP_PASSWORD": "#SMTP_PASSWORD",
|
||||
"SMTP_FROM_EMAIL": "#SMTP_FROM_EMAIL"
|
||||
}
|
||||
}
|
||||
157
outline/service-outline.json
Normal file
157
outline/service-outline.json
Normal file
@@ -0,0 +1,157 @@
|
||||
{
|
||||
"main": {
|
||||
"SERVICE_NAME": "outline",
|
||||
"DOMAIN": "#DOMAIN"
|
||||
},
|
||||
"containers": [
|
||||
{
|
||||
"IMAGE": "alpine:latest",
|
||||
"UPDATE": "true",
|
||||
"NAME": "outline-init",
|
||||
"NETWORK": "host",
|
||||
"MEMORY": "64M",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "USER_DATA",
|
||||
"DEST": "/etc/user/data",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"EXTRA": "--rm",
|
||||
"DEPEND": "null",
|
||||
"START_ON_BOOT": "false",
|
||||
"ENTRYPOINT": "sh -c",
|
||||
"CMD": "mkdir -p /etc/user/data/outline/data && mkdir -p /etc/user/data/outline/db",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
},
|
||||
{
|
||||
"IMAGE": "postgres:16-alpine",
|
||||
"UPDATE": "true",
|
||||
"NAME": "outlinepostgres-db",
|
||||
"MEMORY": "256M",
|
||||
"NETWORK": "outline-net",
|
||||
"SELECTOR": "outlinepostgres-db",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/etc/user/data/outline/db",
|
||||
"DEST": "/var/lib/postgresql/data",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"PORTS": [
|
||||
{
|
||||
"SOURCE": "null",
|
||||
"DEST": "5432",
|
||||
"TYPE": "tcp"
|
||||
}
|
||||
],
|
||||
"ENV_FILES": [
|
||||
"/etc/user/secret/outline/outline.json"
|
||||
],
|
||||
"EXTRA": "--restart always",
|
||||
"DEPEND": "null",
|
||||
"START_ON_BOOT": "false",
|
||||
"CMD": "null",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
},
|
||||
{
|
||||
"IMAGE": "redis:latest",
|
||||
"UPDATE": "true",
|
||||
"NAME": "outlineredis-server",
|
||||
"MEMORY": "128M",
|
||||
"NETWORK": "outline-net",
|
||||
"SELECTOR": "outlineredis",
|
||||
"PORTS": [
|
||||
{
|
||||
"SOURCE": "null",
|
||||
"DEST": "6379",
|
||||
"TYPE": "tcp"
|
||||
}
|
||||
],
|
||||
"EXTRA": "--restart always",
|
||||
"DEPEND": "null",
|
||||
"START_ON_BOOT": "false",
|
||||
"CMD": "null",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
},
|
||||
{
|
||||
"IMAGE": "outlinewiki/outline:latest",
|
||||
"UPDATE": "true",
|
||||
"NAME": "outlineapp",
|
||||
"NETWORK": "outline-net",
|
||||
"SELECTOR": "outline-app",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/etc/user/data/outline/data",
|
||||
"DEST": "/var/lib/outline/data",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"PORTS": [
|
||||
{
|
||||
"SOURCE": "null",
|
||||
"DEST": "3000",
|
||||
"TYPE": "tcp"
|
||||
}
|
||||
],
|
||||
"ENVS": [
|
||||
{
|
||||
"NODE_ENV": "production"
|
||||
},
|
||||
{
|
||||
"DATABASE_CONNECTION_POOL_MIN": ""
|
||||
},
|
||||
{
|
||||
"DATABASE_CONNECTION_POOL_MAX": ""
|
||||
},
|
||||
{
|
||||
"REDIS_URL": "redis://outlineredis-server:6379"
|
||||
},
|
||||
{
|
||||
"URL": "https://#DOMAIN"
|
||||
},
|
||||
{
|
||||
"PORT": 3000
|
||||
},
|
||||
{
|
||||
"COLLABORATION_URL": ""
|
||||
},
|
||||
{
|
||||
"FILE_STORAGE": "local"
|
||||
},
|
||||
{
|
||||
"FILE_STORAGE_LOCAL_ROOT_DIR": "/var/lib/outline/data"
|
||||
},
|
||||
{
|
||||
"FILE_STORAGE_UPLOAD_MAX_SIZE": 262144000
|
||||
},
|
||||
{
|
||||
"FILE_STORAGE_IMPORT_MAX_SIZE": ""
|
||||
},
|
||||
{
|
||||
"FILE_STORAGE_WORKSPACE_IMPORT_MAX_SIZE": ""
|
||||
},
|
||||
{
|
||||
"PGSSLMODE": "disable"
|
||||
}
|
||||
],
|
||||
"ENV_FILES": [
|
||||
"/etc/user/secret/outline/outline.json"
|
||||
],
|
||||
"EXTRA": "--restart always",
|
||||
"DEPEND": [],
|
||||
"START_ON_BOOT": "false",
|
||||
"CMD": "null",
|
||||
"PRE_START": "null",
|
||||
"POST_START": [
|
||||
"firewall-outline",
|
||||
"domain-outline",
|
||||
"firewall-outline-dns",
|
||||
"firewall-outline-smtp"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
225
outline/template.json
Normal file
225
outline/template.json
Normal file
@@ -0,0 +1,225 @@
|
||||
{
|
||||
"name": "outline",
|
||||
"title": "Outline",
|
||||
"subtitle": "Knowledge Base",
|
||||
"description": "Outline is an open-source, self-hosted knowledge management and wiki application designed for teams to organize documentation, internal knowledge bases, onboarding guides, and notes.",
|
||||
"icon": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCA1MCA1MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIiByeD0iNyIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTMwLjMzMzMgNDIuMjUyNlY0My4zMDQ0QzMwLjMzMzMgNDQuNzkzMSAyOS4xMzk0IDQ2IDI3LjY2NjcgNDZDMjcuMjA4NyA0NiAyNi43NTg1IDQ1Ljg4MDggMjYuMzU5MyA0NS42NTM4TDEwLjM1OTMgMzYuNTU1OUM5LjUxOTY4IDM2LjA3ODQgOSAzNS4xODAzIDkgMzQuMjA2NFYxNS43OTRDOSAxNC44MjAyIDkuNTE5NjggMTMuOTIyIDEwLjM1OTMgMTMuNDQ0NkwyNi4zNTkzIDQuMzQ2NjdDMjcuNjQyOSAzLjYxNjc3IDI5LjI2ODggNC4wNzY5OSAyOS45OTA4IDUuMzc0NTdDMzAuMjE1NCA1Ljc3ODA2IDMwLjMzMzMgNi4yMzMyMSAzMC4zMzMzIDYuNjk2MTZWNy43NDc4OEwzMi4yMzM3IDcuMTcxNTZDMzMuNjQ0NCA2Ljc0Mzc2IDM1LjEzMSA3LjU1Mjk2IDM1LjU1NDIgOC45Nzg5NEMzNS42Mjg4IDkuMjMwMjkgMzUuNjY2NyA5LjQ5MTIzIDM1LjY2NjcgOS43NTM1N1YxMC44NDc5TDM4LjAwMjYgMTAuNTUyOEMzOS40NjQgMTAuMzY4MSA0MC43OTY3IDExLjQxNiA0MC45Nzk0IDEyLjg5MzJDNDAuOTkzMiAxMy4wMDQyIDQxIDEzLjExNTggNDEgMTMuMjI3NlYzNi43NzI4QzQxIDM4LjI2MTcgMzkuODA2MSAzOS40Njg2IDM4LjMzMzMgMzkuNDY4NkMzOC4yMjI3IDM5LjQ2ODYgMzguMTEyMyAzOS40NjE2IDM4LjAwMjYgMzkuNDQ3N0wzNS42NjY3IDM5LjE1MjZWNDAuMjQ3QzM1LjY2NjcgNDEuNzM1NyAzNC40NzI3IDQyLjk0MjYgMzMgNDIuOTQyNkMzMi43NDA1IDQyLjk0MjYgMzIuNDgyMyA0Mi45MDQzIDMyLjIzMzcgNDIuODI4OUwzMC4zMzMzIDQyLjI1MjZaTTMwLjMzMzMgMzkuNDM4MkwzMyA0MC4yNDdWMjUuMDAwM1Y5Ljc1MzU3TDMwLjMzMzMgMTAuNTYyMlYzOS40MzgyWk0zNS42NjY3IDEzLjU2NDZWMzYuNDM2TDM4LjMzMzMgMzYuNzcyOFYxMy4yMjc2TDM1LjY2NjcgMTMuNTY0NlpNMTEuNjY2NyAxNS43OTRWMzQuMjA2NEwyNy42NjY3IDQzLjMwNDRWNi42OTYxNkwxMS42NjY3IDE1Ljc5NFpNMTQuMzMzMyAxNy41ODcxTDE3IDE2LjIzOTJWMzMuNzYxMkwxNC4zMzMzIDMyLjQxMzNWMTcuNTg3MVoiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPgo=",
|
||||
"fields": [
|
||||
{
|
||||
"description": "Secret key",
|
||||
"key": "SECRET_KEY",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "openssl|hex|32"
|
||||
},
|
||||
{
|
||||
"description": "Util secret key",
|
||||
"key": "UTILS_SECRET",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "openssl|hex|32"
|
||||
},
|
||||
{
|
||||
"description": "Postgres database name",
|
||||
"key": "DB_NAME",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "time|md5|8"
|
||||
},
|
||||
{
|
||||
"description": "Postgres username",
|
||||
"key": "DB_USER",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "time|md5|8"
|
||||
},
|
||||
{
|
||||
"description": "Postgres password for user",
|
||||
"key": "DB_PASSWORD",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "random|md5|12"
|
||||
},
|
||||
{
|
||||
"description": "Postgres root user password",
|
||||
"key": "DB_ROOT_PASSWORD",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "random|sha256|20"
|
||||
},
|
||||
{
|
||||
"description": "Domain:",
|
||||
"key": "DOMAIN",
|
||||
"value": "",
|
||||
"required": "true"
|
||||
},
|
||||
{
|
||||
"description": "Slack client ID",
|
||||
"key": "SLACK_CLIENT_ID",
|
||||
"value": "",
|
||||
"info": "Create a new app in your Slack workspace at https://api.slack.com/apps?new_app=1 and add 'Sign in with Slack' under 'Add features and functionality'. Set the Redirect URL to 'https://<your-domain>/auth/slack.callback'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Slack client secret",
|
||||
"key": "SLACK_CLIENT_SECRET",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Google client ID",
|
||||
"key": "GOOGLE_CLIENT_ID",
|
||||
"value": "",
|
||||
"info": "Create OAuth 2.0 credentials in Google Cloud Console at https://console.cloud.google.com/apis/credentials and set the Redirect URL to 'https://<your-domain>/auth/google.callback'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Google client secret",
|
||||
"key": "GOOGLE_CLIENT_SECRET",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Azure client ID",
|
||||
"key": "AZURE_CLIENT_ID",
|
||||
"value": "",
|
||||
"info": "Register an application in Azure AD at https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade and set the Redirect URL to 'https://<your-domain>/auth/azuread.callback'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Azure client secret",
|
||||
"key": "AZURE_CLIENT_SECRET",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Azure resource app ID",
|
||||
"key": "AZURE_RESOURCE_APP_ID",
|
||||
"value": "",
|
||||
"info": "This is usually the same as the client ID, but can vary based on your Azure AD setup.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Discord client ID",
|
||||
"key": "DISCORD_CLIENT_ID",
|
||||
"value": "",
|
||||
"info": "Create an application in Discord Developer Portal at https://discord.com/developers/applications and set the Redirect URL to 'https://<your-domain>/auth/discord.callback'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Discord client secret",
|
||||
"key": "DISCORD_CLIENT_SECRET",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Discord server ID (optional)",
|
||||
"key": "DISCORD_SERVER_ID",
|
||||
"value": "",
|
||||
"info": "(Optional) If you want to restrict login to members of a specific Discord server, provide the server ID here.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect client ID",
|
||||
"key": "OIDC_CLIENT_ID",
|
||||
"value": "",
|
||||
"info": "Set up an OpenID Connect application with your provider and set the Redirect URL to 'https://<your-domain>/auth/oidc.callback'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect client secret",
|
||||
"key": "OIDC_CLIENT_SECRET",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect provider auth URI",
|
||||
"key": "OIDC_AUTH_URI",
|
||||
"value": "",
|
||||
"info": "The authorization endpoint URL of your OpenID Connect provider.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect provider token URI",
|
||||
"key": "OIDC_TOKEN_URI",
|
||||
"value": "",
|
||||
"info": "The token endpoint URL of your OpenID Connect provider.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect provider userinfo URI",
|
||||
"key": "OIDC_USERINFO_URI",
|
||||
"value": "",
|
||||
"info": "The userinfo endpoint URL of your OpenID Connect provider.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect provider logout URI (optional)",
|
||||
"key": "OIDC_LOGOUT_URI",
|
||||
"value": "",
|
||||
"info": "(Optional) The logout endpoint URL of your OpenID Connect provider, if supported.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect username claim",
|
||||
"key": "OIDC_USERNAME_CLAIM",
|
||||
"value": "preferred_username",
|
||||
"info": "The claim in the ID token or userinfo response to use as the username. Defaults to 'preferred_username'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect display name",
|
||||
"key": "OIDC_DISPLAY_NAME",
|
||||
"value": "OpenID Connect",
|
||||
"info": "The display name for the OpenID Connect authentication option. Defaults to 'OpenID Connect'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "OpenID Connect scopes",
|
||||
"key": "OIDC_SCOPES",
|
||||
"value": "openid profile email",
|
||||
"info": "Space-separated list of scopes to request during authentication. Defaults to 'openid profile email'.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "SMTP host",
|
||||
"key": "SMTP_HOST",
|
||||
"value": "",
|
||||
"info": "Used for sending invitation and password reset emails. Leave blank to disable email functionality.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "SMTP port",
|
||||
"key": "SMTP_PORT",
|
||||
"value": "587",
|
||||
"info": "(Optional) The port to connect to on the SMTP server. Defaults to 587.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "SMTP service (e.g., gmail)",
|
||||
"key": "SMTP_SERVICE",
|
||||
"value": "",
|
||||
"info": "Used for sending invitation and password reset emails. Leave blank to disable email functionality.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "SMTP username (email address)",
|
||||
"key": "SMTP_USERNAME",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "SMTP password",
|
||||
"key": "SMTP_PASSWORD",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "From email address",
|
||||
"key": "SMTP_FROM_EMAIL",
|
||||
"value": "",
|
||||
"info": "(Optional) The email address that emails will be sent from. Defaults to the SMTP username if not set.",
|
||||
"advanced": "true"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user