docs: add smtp configuration page for self-hosters (#4833)

This commit is contained in:
Matti Nannt
2025-02-28 17:06:21 +01:00
committed by GitHub
parent a5d80d1f02
commit fccf0f1e39
7 changed files with 137 additions and 30 deletions

View File

@@ -255,6 +255,7 @@
"pages": [
"self-hosting/configuration/custom-ssl",
"self-hosting/configuration/environment-variables",
"self-hosting/configuration/smtp",
{
"group": "Auth & SSO",
"icon": "lock",

View File

@@ -0,0 +1,136 @@
---
title: "SMTP Configuration"
description: "Set up email functionality for your self-hosted Formbricks instance"
icon: "envelope"
---
By default, Formbricks doesn't include an SMTP server for sending emails. However, you can easily configure your self-hosted instance to use your own email provider through environment variables.
## Why Configure SMTP?
Setting up an SMTP server enables important email functionality in Formbricks, including:
- Email verification for new accounts
- Password reset emails
- Team member invitation emails
- Survey response notifications
## Email Configuration Options
Formbricks uses Nodemailer to send emails and supports various SMTP providers like:
- AWS SES
- SendGrid
- Mailgun
- Gmail (for low volume)
- Custom SMTP servers
- Other SMTP providers
## Required Environment Variables
To enable email functionality, configure the following environment variables:
```bash
# Basic SMTP Configuration
MAIL_FROM=noreply@yourdomain.com
SMTP_HOST=smtp.yourprovider.com
SMTP_PORT=587
SMTP_USER=your_username
SMTP_PASSWORD=your_password
```
Additional optional settings:
```bash
# Enable SMTP_SECURE_ENABLED for TLS (port 465)
SMTP_SECURE_ENABLED=0
# If set to 0, the server won't require authentication
SMTP_AUTHENTICATED=1
# If set to 0, the server will accept connections without requiring
# authorization from the list of supplied CAs (default is 1)
SMTP_REJECT_UNAUTHORIZED_TLS=0
```
## Enabling Email Features
By default, email verification and password reset features are **disabled** in Formbricks. To enable these features:
```bash
# Set to 0 to enable email verification (requires working SMTP)
EMAIL_VERIFICATION_DISABLED=0
# Set to 0 to enable password reset functionality (requires working SMTP)
PASSWORD_RESET_DISABLED=0
```
## Configuration for One-Click Setup
If you're using the one-click setup with Docker Compose, you can either:
1. Edit the docker-compose.yml file and add the SMTP environment variables:
```yaml
environment:
# Email Configuration
MAIL_FROM: noreply@yourdomain.com
SMTP_HOST: smtp.yourprovider.com
SMTP_PORT: 587
SMTP_USER: your_username
SMTP_PASSWORD: your_password
EMAIL_VERIFICATION_DISABLED: 0
PASSWORD_RESET_DISABLED: 0
```
2. Or during the setup, answer "Yes" when prompted to set up the email service:
```
📧 Do you want to set up the email service? You will need SMTP credentials for the same! [y/N] y
```
## Provider-Specific Examples
### SendGrid
```bash
MAIL_FROM=noreply@yourdomain.com
SMTP_HOST=smtp.sendgrid.net
SMTP_PORT=587
SMTP_USER=apikey
SMTP_PASSWORD=your_sendgrid_api_key
```
### AWS SES
```bash
MAIL_FROM=noreply@yourdomain.com
SMTP_HOST=email-smtp.us-east-1.amazonaws.com
SMTP_PORT=587
SMTP_USER=your_ses_access_key
SMTP_PASSWORD=your_ses_secret_key
```
### Gmail
```bash
MAIL_FROM=your_email@gmail.com
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your_email@gmail.com
SMTP_PASSWORD=your_app_password
```
> **Note**: For Gmail, you need to use an App Password if you have 2FA enabled.
## Troubleshooting
If you're experiencing issues with your email configuration:
1. Check that all required environment variables are set correctly
2. Verify your SMTP credentials are valid
3. Ensure your email provider allows sending from the specified MAIL_FROM address
4. If using Gmail, ensure you're using an App Password
5. For secure connections, make sure you've set the correct port and SMTP_SECURE_ENABLED value
For additional help, join the conversation on [GitHub Discussions](https://github.com/formbricks/formbricks/discussions).

View File

@@ -6,7 +6,6 @@
"continue_with_google": "Login mit Google",
"continue_with_oidc": "Weiter mit {oidcDisplayName}",
"continue_with_openid": "Login mit OpenID",
"continue_with_saml": "Login mit SAML SSO",
"forgot-password": {
"back_to_login": "Zurück zum Login",
"email-sent": {
@@ -53,7 +52,6 @@
"new_to_formbricks": "Neu bei Formbricks?",
"use_a_backup_code": "Einen Backup-Code verwenden"
},
"saml_connection_error": "Etwas ist schiefgelaufen. Bitte überprüfe die App-Konsole für weitere Details.",
"signup": {
"captcha_failed": "reCAPTCHA fehlgeschlagen",
"have_an_account": "Hast Du ein Konto?",
@@ -1857,10 +1855,6 @@
"smileys_description": "Verwende visuelle Indikatoren, um Feedback an allen Kundenkontaktpunkten zu erfassen."
}
},
"health": {
"degraded": "Es scheint ein Problem zu geben :(",
"healthy": "Alle Systeme laufen und sind betriebsbereit"
},
"organizations": {
"landing": {
"no_projects_warning_subtitle": "Wenden Sie sich an den Eigentümer Ihrer Organisation, um Zugriff auf Projekte zu erhalten. Oder erstellen Sie eine eigene Organisation, um loszulegen.",

View File

@@ -6,7 +6,6 @@
"continue_with_google": "Continue with Google",
"continue_with_oidc": "Continue with {oidcDisplayName}",
"continue_with_openid": "Continue with OpenID",
"continue_with_saml": "Continue with SAML SSO",
"forgot-password": {
"back_to_login": "Back to login",
"email-sent": {
@@ -53,7 +52,6 @@
"new_to_formbricks": "New to Formbricks?",
"use_a_backup_code": "Use a backup code"
},
"saml_connection_error": "Something went wrong. Please check your app console for more details.",
"signup": {
"captcha_failed": "Captcha failed",
"have_an_account": "Have an account?",
@@ -1857,10 +1855,6 @@
"smileys_description": "Use visual indicators to capture feedback across customer touchpoints."
}
},
"health": {
"degraded": "Your Formbricks health is degraded",
"healthy": "All systems are up and running"
},
"organizations": {
"landing": {
"no_projects_warning_subtitle": "Reach out to your organization owner to get access to projects. Or create an own organization to get started.",

View File

@@ -6,7 +6,6 @@
"continue_with_google": "Continuer avec Google",
"continue_with_oidc": "Continuer avec {oidcDisplayName}",
"continue_with_openid": "Continuer avec OpenID",
"continue_with_saml": "Continuer avec SAML SSO",
"forgot-password": {
"back_to_login": "Retour à la connexion",
"email-sent": {
@@ -53,7 +52,6 @@
"new_to_formbricks": "Nouveau sur Formbricks ?",
"use_a_backup_code": "Utiliser un code de secours"
},
"saml_connection_error": "Quelque chose s'est mal passé. Veuillez vérifier la console de votre application pour plus de détails.",
"signup": {
"captcha_failed": "Captcha échoué",
"have_an_account": "Avez-vous un compte ?",
@@ -1857,10 +1855,6 @@
"smileys_description": "Utilisez des indicateurs visuels pour recueillir des retours d'expérience à travers les points de contact avec les clients."
}
},
"health": {
"degraded": "La santé de votre Formbricks est dégradée.",
"healthy": "Tous les systèmes sont opérationnels."
},
"organizations": {
"landing": {
"no_projects_warning_subtitle": "Contactez le propriétaire de votre organisation pour obtenir l'accès aux projets. Ou créez votre propre organisation pour commencer.",

View File

@@ -6,7 +6,6 @@
"continue_with_google": "Continuar com o Google",
"continue_with_oidc": "Continuar com {oidcDisplayName}",
"continue_with_openid": "Continuar com OpenID",
"continue_with_saml": "Continuar com SAML SSO",
"forgot-password": {
"back_to_login": "Voltar para o login",
"email-sent": {
@@ -53,7 +52,6 @@
"new_to_formbricks": "Novo no Formbricks?",
"use_a_backup_code": "Usar um código de backup"
},
"saml_connection_error": "Algo deu errado. Por favor, verifica o console do app para mais detalhes.",
"signup": {
"captcha_failed": "reCAPTCHA falhou",
"have_an_account": "Já tem uma conta?",
@@ -1857,10 +1855,6 @@
"smileys_description": "Use indicadores visuais pra captar feedback em todos os pontos de contato com o cliente."
}
},
"health": {
"degraded": "A saúde do seu Formbricks está degradada",
"healthy": "Todos os sistemas estão funcionando"
},
"organizations": {
"landing": {
"no_projects_warning_subtitle": "Entre em contato com o proprietário da sua organização para obter acesso aos projetos. Ou crie uma organização própria para começar.",

View File

@@ -6,7 +6,6 @@
"continue_with_google": "使用 Google 繼續",
"continue_with_oidc": "使用 '{'oidcDisplayName'}' 繼續",
"continue_with_openid": "使用 OpenID 繼續",
"continue_with_saml": "使用 SAML SSO 繼續",
"forgot-password": {
"back_to_login": "返回登入",
"email-sent": {
@@ -53,7 +52,6 @@
"new_to_formbricks": "初次使用 Formbricks",
"use_a_backup_code": "使用備份碼"
},
"saml_connection_error": "發生錯誤。請檢查您的 app 主控台以取得更多詳細資料。",
"signup": {
"captcha_failed": "驗證碼失敗",
"have_an_account": "已有帳戶?",
@@ -1857,10 +1855,6 @@
"smileys_description": "使用視覺指標來擷取客戶接觸點的回饋。"
}
},
"health": {
"degraded": "您的 Formbricks 運作狀況已降低",
"healthy": "所有系統都已啟動並執行"
},
"organizations": {
"landing": {
"no_projects_warning_subtitle": "請聯絡您的組織擁有者以取得專案存取權限。或建立自己的組織以開始使用。",