title | redirect_from | |
---|---|---|
Environment variables |
|
This documentation was generated from source by running:
clojure -M:ee:run environment-variables-documentation
Many settings in Metabase can be viewed and modified in the Admin Panel, or set via environment variables. The environment variables always take precedence. Note that, unlike settings configured in the Admin settings of your Metabase, the environment variables won't get written into the application database.
Setting environment variables can be done in various ways depending on how you're running Metabase.
JAR file:
# Mac, Linux and other Unix-based systems
export MB_SITE_NAME="Awesome Company"
# Windows Powershell
$env:MB_SITE_NAME="Awesome Company"
# Windows batch/cmd
set MB_SITE_NAME="Awesome Company"
java -jar metabase.jar
Or set it as Java property, which works the same across all systems:
java -DMB_SITE_NAME="Awesome Company" -jar metabase.jar
Docker:
docker run -d -p 3000:3000 -e MB_SITE_NAME="Awesome Company" --name metabase metabase/metabase
- Type: string
- Default:
null
- Configuration file name:
admin-email
The email address users should be referred to if they encounter a problem.
- Type: integer
- Default:
10000
- Exported as:
aggregated-query-row-limit
. - Configuration file name:
aggregated-query-row-limit
Maximum number of rows to return for aggregated queries via the API.
Must be less than 1048575. This environment variable also affects how many rows Metabase includes in dashboard subscription attachments. This environment variable also affects how many rows Metabase includes in dashboard subscription attachments. See also MB_UNAGGREGATED_QUERY_ROW_LIMIT.
- Type: boolean
- Default:
true
- Configuration file name:
anon-tracking-enabled
Enable the collection of anonymous usage data in order to help Metabase improve.
- Type: string
- Default:
null
When set, this API key is required for all API requests.
Middleware that enforces validation of the client via the request header X-Metabase-Apikey. If the header is available, then it’s validated against MB_API_KEY. When it matches, the request continues; otherwise it’s blocked with a 403 Forbidden response.
Only available on Metabase Pro and Enterprise plans.
- Type: json
- Default:
{}
- Exported as:
application-colors
. - Configuration file name:
application-colors
Choose the colors used in the user interface throughout Metabase and others specifically for the charts. You need to refresh your browser to see your changes take effect.
To change the user interface colors:
{
"brand":"#ff003b",
"filter":"#FF003B",
"summarize":"#FF003B"
}
To change the chart colors:
{
"accent0":"#FF0005",
"accent1":"#E6C367",
"accent2":"#B9E68A",
"accent3":"#8AE69F",
"accent4":"#8AE6E4",
"accent5":"#8AA2E6",
"accent6":"#B68AE6",
"accent7":"#E68AD0"
}
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
app/assets/img/favicon.ico
- Exported as:
application-favicon-url
. - Configuration file name:
application-favicon-url
Upload a file to use as the favicon.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
Lato
- Exported as:
application-font
. - Configuration file name:
application-font
Replace “Lato” as the font family.
Only available on Metabase Pro and Enterprise plans.
- Type: json
- Default:
null
- Exported as:
application-font-files
. - Configuration file name:
application-font-files
Tell us where to find the file for each font weight. You don’t need to include all of them, but it’ll look better if you do.
Example value:
[
{
"src": "https://example.com/resources/font-400",
"fontFormat": "ttf",
"fontWeight": 400
},
{
"src": "https://example.com/resources/font-700",
"fontFormat": "woff",
"fontWeight": 700
}
]
See fonts.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
app/assets/img/logo.svg
- Exported as:
application-logo-url
. - Configuration file name:
application-logo-url
Upload a file to replace the Metabase logo on the top bar.
Inline styling and inline scripts are not supported.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
Metabase
- Exported as:
application-name
. - Configuration file name:
application-name
Replace the word “Metabase” wherever it appears.
- Type: positive-integer
- Default:
20
Maximum number of rows to render in an alert or subscription image.
Range: 1-100. To limit the total number of rows included in the file attachment for an email dashboard subscription, use MB_UNAGGREGATED_QUERY_ROW_LIMIT.
- Type: boolean
- Default:
true
- Configuration file name:
bcc-enabled
Whether or not bcc emails are enabled, default behavior is that it is.
- Type: double
- Default:
10.0
- Configuration file name:
breakout-bin-width
When using the default binning strategy for a field of type Coordinate (such as Latitude and Longitude), this number will be used as the default bin width (in degrees).
- Type: integer
- Default:
8
- Exported as:
breakout-bins-num
. - Configuration file name:
breakout-bins-num
When using the default binning strategy and a number of bins is not provided, this number will be used as the default.
- Type: boolean
- Default:
true
- Configuration file name:
check-for-updates
Identify when new versions of Metabase are available.
- Type: boolean
- Default:
true
Whether to sync newly created Databases during config-from-file initialization. By default, true, but you can disable this behavior if you want to sync it manually or use SerDes to populate its data model.
- Type: json
- Default:
{}
- Exported as:
custom-formatting
. - Configuration file name:
custom-formatting
Object keyed by type, containing formatting settings.
- Type: json
- Default:
null
- Exported as:
custom-geojson
. - Configuration file name:
custom-geojson
JSON containing information about custom GeoJSON files for use in map visualizations instead of the default US State or World GeoJSON.
- Type: boolean
- Default:
false
- Configuration file name:
custom-homepage
Pick one of your dashboards to serve as homepage. Users without dashboard access will be directed to the default homepage.
- Type: integer
- Default:
null
- Configuration file name:
custom-homepage-dashboard
ID of dashboard to use as a homepage.
- Type: integer
- Default:
10000
Consider metabase.driver/can-connect? / can-connect-with-details? to have failed if they were not able to successfully connect after this many milliseconds. By default, this is 10 seconds.
Timeout in milliseconds for connecting to databases, both Metabase application database and data connections. In case you're connecting via an SSH tunnel and run into a timeout, you might consider increasing this value as the connections via tunnels have more overhead than connections without.
- Type: boolean
- Default:
false
- Configuration file name:
ee-ai-features-enabled
Enable AI features.
This feature is experimental.
- Type: string
- Default:
null
- Configuration file name:
ee-openai-api-key
The OpenAI API Key used in Metabase Enterprise.
This feature is experimental.
- Type: string
- Default:
gpt-4-turbo-preview
- Configuration file name:
ee-openai-model
The OpenAI Model (e.g. gpt-4, gpt-3.5-turbo).
This feature is experimental.
- Type: string
- Default:
[email protected]
- Configuration file name:
email-from-address
The email address you want to use for the sender of emails.
- Type: string
- Default:
null
- Configuration file name:
email-from-name
The name you want to use for the sender of emails.
- Type: json
- Default:
null
- Configuration file name:
email-reply-to
The email address you want the replies to go to, if different from the from address.
- Type: string
- Default:
null
- Configuration file name:
email-smtp-host
The address of the SMTP server that handles your emails.
- Type: string
- Default:
null
- Configuration file name:
email-smtp-password
SMTP password.
- Type: integer
- Default:
null
- Configuration file name:
email-smtp-port
The port your SMTP server uses for outgoing emails.
- Type: keyword
- Default:
:none
- Configuration file name:
email-smtp-security
SMTP secure connection protocol. (tls, ssl, starttls, or none).
- Type: string
- Default:
null
- Configuration file name:
email-smtp-username
SMTP username.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
embedding-app-origin
Allow this origin to embed the full Metabase application.
- Type: keyword
- Default:
:hidden
- Exported as:
embedding-homepage
. - Configuration file name:
embedding-homepage
Embedding homepage status, indicating if its visible, hidden or has been dismissed.
- Type: string
- Default:
null
- Configuration file name:
embedding-secret-key
Secret key used to sign JSON Web Tokens for requests to /api/embed
endpoints.
- Type: boolean
- Default:
false
- Exported as:
enable-embedding
. - Configuration file name:
enable-embedding
Allow admins to securely embed questions and dashboards within other applications?
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
true
- Configuration file name:
enable-password-login
Allow logging in by email and password.
- Type: boolean
- Default:
true
- Configuration file name:
enable-public-sharing
Enable admins to create publicly viewable links (and embeddable iframes) for Questions and Dashboards?
- Type: boolean
- Default:
true
- Configuration file name:
enable-query-caching
Allow caching results of queries that take a long time to run.
- Type: boolean
- Default:
true
- Exported as:
enable-xrays
. - Configuration file name:
enable-xrays
Allow users to explore data using X-rays.
- Type: integer
- Default:
60
Enumerated field values with cardinality at or below this point are treated as enums in the pseudo-ddl used in some model prompts.
- Type: boolean
- Default:
false
Have we sent a follow up email to the instance admin?
- Type: string
- Default:
null
- Configuration file name:
google-auth-auto-create-accounts-domain
When set, allow users to sign up on their own if their Google account email address is from this domain.
- Type: string
- Default:
null
- Configuration file name:
google-auth-client-id
Client ID for Google Sign-In.
- Type: boolean
- Default:
null
- Configuration file name:
google-auth-enabled
Is Google Sign-in currently enabled?
- Type: boolean
- Default:
true
Whether to log health check requests from session middleware.
Only available on Metabase Pro and Enterprise plans.
- Type: keyword
- Default:
:metabase
- Configuration file name:
help-link
Keyword setting to control whitelabeling of the help link. Valid values are :metabase
, :hidden
, and :custom
. If :custom
is set, the help link will use the URL specified in the help-link-custom-destination
, or be hidden if it is not set.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
help-link-custom-destination
Custom URL for the help link.
- Type: keyword
- Default:
:simple
- Exported as:
humanization-strategy
. - Configuration file name:
humanization-strategy
To make table and field names more human-friendly, Metabase will replace dashes and underscores in them with spaces. We’ll capitalize each word while at it, so ‘last_visited_at’ will become ‘Last Visited At’.
- Type: boolean
- Default:
false
- Configuration file name:
is-metabot-enabled
Is Metabot enabled?
- Type: integer
- Default:
15
Maximum size of the c3p0 connection pool.
Change this to a higher value if you notice that regular usage consumes all or close to all connections.
When all connections are in use then Metabase will be slower to return results for queries, since it would have to wait for an available connection before processing the next query in the queue.
For setting the maximum, see MB_APPLICATION_DB_MAX_CONNECTION_POOL_SIZE.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
email
- Configuration file name:
jwt-attribute-email
Key to retrieve the JWT users email address.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
first_name
- Configuration file name:
jwt-attribute-firstname
Key to retrieve the JWT users first name.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
groups
- Configuration file name:
jwt-attribute-groups
Key to retrieve the JWT users groups.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
last_name
- Configuration file name:
jwt-attribute-lastname
Key to retrieve the JWT users last name.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
false
- Configuration file name:
jwt-enabled
Is JWT authentication configured and enabled?
When set to true, will enable JWT authentication with the options configured in the MB_JWT_* variables. This is for JWT SSO authentication, and has nothing to do with Static embedding, which is MB_EMBEDDING_SECRET_KEY.
Only available on Metabase Pro and Enterprise plans.
- Type: json
- Default:
{}
- Configuration file name:
jwt-group-mappings
JSON containing JWT to Metabase group mappings.
JSON object containing JWT to Metabase group mappings, where keys are JWT groups and values are lists of Metabase groups IDs.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
false
- Configuration file name:
jwt-group-sync
Enable group membership synchronization with JWT.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
jwt-identity-provider-uri
URL of JWT based login page.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
jwt-shared-secret
String used to seed the private key used to validate JWT messages. A hexadecimal-encoded 256-bit key (i.e., a 64-character string) is strongly recommended.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
true
- Configuration file name:
jwt-user-provisioning-enabled
When we enable JWT user provisioning, we automatically create a Metabase account on JWT signin for users who don't have one.
- Type: string
- Default: ``
- Exported as:
landing-page
. - Configuration file name:
landing-page
Enter a URL of the landing page to show the user. This overrides the custom homepage setting above.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
default
- Exported as:
landing-page-illustration
. - Configuration file name:
landing-page-illustration
Options for displaying the illustration on the landing page.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Exported as:
landing-page-illustration-custom
. - Configuration file name:
landing-page-illustration-custom
The custom illustration for the landing page.
- Type: string
- Default:
mail
- Configuration file name:
ldap-attribute-email
Attribute to use for the user's email. (usually 'mail', 'email' or 'userPrincipalName').
- Type: string
- Default:
givenName
- Configuration file name:
ldap-attribute-firstname
Attribute to use for the user's first name. (usually 'givenName').
- Type: string
- Default:
sn
- Configuration file name:
ldap-attribute-lastname
Attribute to use for the user's last name. (usually 'sn').
- Type: string
- Default:
null
- Configuration file name:
ldap-bind-dn
The Distinguished Name to bind as (if any), this user will be used to lookup information about other users.
- Type: boolean
- Default:
false
- Configuration file name:
ldap-enabled
Is LDAP currently enabled?
- Type: string
- Default:
null
- Configuration file name:
ldap-group-base
Search base for groups. Not required for LDAP directories that provide a 'memberOf' overlay, such as Active Directory. (Will be searched recursively).
- Type: json
- Default:
{}
- Configuration file name:
ldap-group-mappings
JSON containing LDAP to Metabase group mappings.
- Type: string
- Default:
(member={dn})
- Configuration file name:
ldap-group-membership-filter
Group membership lookup filter. The placeholders {dn} and {uid} will be replaced by the user's Distinguished Name and UID, respectively.
- Type: boolean
- Default:
false
- Configuration file name:
ldap-group-sync
Enable group membership synchronization with LDAP.
- Type: string
- Default:
null
- Configuration file name:
ldap-host
Server hostname.
- Type: string
- Default:
null
- Configuration file name:
ldap-password
The password to bind with for the lookup user.
- Type: integer
- Default:
389
- Configuration file name:
ldap-port
Server port, usually 389 or 636 if SSL is used.
- Type: keyword
- Default:
:none
- Configuration file name:
ldap-security
Use SSL, TLS or plain text.
- Type: boolean
- Default:
true
- Configuration file name:
ldap-sync-user-attributes
Should we sync user attributes when someone logs in via LDAP?
- Type: csv
- Default:
userPassword,dn,distinguishedName
- Configuration file name:
ldap-sync-user-attributes-blacklist
Comma-separated list of user attributes to skip syncing for LDAP users.
- Type: string
- Default:
null
- Configuration file name:
ldap-user-base
Search base for users. (Will be searched recursively).
- Type: string
- Default:
(&(objectClass=inetOrgPerson)(|(uid={login})(mail={login})))
- Configuration file name:
ldap-user-filter
User lookup filter. The placeholder {login} will be replaced by the user supplied login.
- Type: boolean
- Default:
true
- Configuration file name:
ldap-user-provisioning-enabled
When we enable LDAP user provisioning, we automatically create a Metabase account on LDAP signin for users who don't have one.
Only available on Metabase Pro and Enterprise plans.
- Type: keyword
- Default:
:doing-science
- Exported as:
loading-message
. - Configuration file name:
loading-message
Choose the message to show while a query is running.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
default
- Exported as:
login-page-illustration
. - Configuration file name:
login-page-illustration
Options for displaying the illustration on the login page.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Exported as:
login-page-illustration-custom
. - Configuration file name:
login-page-illustration-custom
The custom illustration for the login page.
- Type: string
- Default:
https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png
- Configuration file name:
map-tile-server-url
The map tile server URL template used in map visualizations, for example from OpenStreetMaps or MapBox.
- Type: string
- Default:
text-embedding-ada-002
The default embeddings model to be used for metabot.
- Type: string
- Default:
https://amtix3l3qvitb2qxstaqtcoqby0monuf.lambda-url.us-east-1.on.aws/
- Configuration file name:
metabot-feedback-url
The URL to which metabot feedback is posted.
- Type: string
- Default:
https://stkxezsr2kcnkhusi3fgcc5nqm0ttgfx.lambda-url.us-east-1.on.aws/
- Configuration file name:
metabot-get-prompt-templates-url
The URL in which metabot versioned prompt templates are stored.
- Type: integer
- Default:
6000
When attempting to assemble prompts, the threshold at which prompt will no longer be appended to.
- Type: keyword
- Default:
:substring
- Exported as:
native-query-autocomplete-match-style
. - Configuration file name:
native-query-autocomplete-match-style
Matching style for native query editors autocomplete. Can be "substring", "prefix", or "off". Larger instances can have performance issues matching using substring, so can use prefix matching, or turn autocompletions off.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
default
- Exported as:
no-data-illustration
. - Configuration file name:
no-data-illustration
Options for displaying the illustration when there are no results after running a question.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Exported as:
no-data-illustration-custom
. - Configuration file name:
no-data-illustration-custom
The custom illustration for when there are no results after running a question.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
default
- Exported as:
no-object-illustration
. - Configuration file name:
no-object-illustration
Options for displaying the illustration when there are no results after searching.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Exported as:
no-object-illustration-custom
. - Configuration file name:
no-object-illustration-custom
The custom illustration for when there are no results after searching.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
By default "Site Url" is used in notification links, but can be overridden.
The base URL where dashboard notitification links will point to instead of the Metabase base URL. Only applicable for users who utilize interactive embedding and subscriptions.
- Type: integer
- Default:
1
Number of potential responses metabot will request. The first valid response is selected.
- Type: string
- Default:
null
- Configuration file name:
openai-api-key
The OpenAI API Key.
- Type: string
- Default:
gpt-4-turbo-preview
- Configuration file name:
openai-model
The OpenAI Model (e.g. gpt-4-turbo-preview, gpt-4, gpt-3.5-turbo).
- Type: string
- Default:
null
- Configuration file name:
openai-organization
The OpenAI Organization ID.
- Type: string
- Default:
0 0 0/6 * * ? *
- Configuration file name:
persisted-model-refresh-cron-schedule
cron syntax string to schedule refreshing persisted models.
- Type: boolean
- Default:
false
- Exported as:
persisted-models-enabled
. - Configuration file name:
persisted-models-enabled
Allow persisting models into the source database.
- Type: string
- Default:
null
- Configuration file name:
premium-embedding-token
Token for premium features. Go to the MetaStore to get yours!
- Type: boolean
- Default:
true
Whether or not we analyze any queries at all.
- Type: integer
- Default:
2000
- Configuration file name:
query-caching-max-kb
The maximum size of the cache, per saved question, in kilobytes.
- Type: double
- Default:
3024000.0
- Configuration file name:
query-caching-max-ttl
The absolute maximum time to keep any cached query results, in seconds.
- Type: boolean
- Default:
false
- Configuration file name:
redirect-all-requests-to-https
Force all traffic to use HTTPS via a redirect, if the site URL is HTTPS.
- Type: string
- Default:
null
- Exported as:
report-timezone
. - Configuration file name:
report-timezone
Connection timezone to use when executing queries. Defaults to system timezone.
- Type: integer
- Default:
48
Number of hours a password reset is considered valid.
- Type: integer
- Default:
500
- Configuration file name:
retry-initial-interval
The initial retry delay in milliseconds.
- Type: integer
- Default:
7
- Configuration file name:
retry-max-attempts
The maximum number of attempts for an event.
- Type: integer
- Default:
30000
- Configuration file name:
retry-max-interval-millis
The maximum delay between attempts.
- Type: double
- Default:
2.0
- Configuration file name:
retry-multiplier
The delay multiplier between attempts.
- Type: double
- Default:
0.1
- Configuration file name:
retry-randomization-factor
The randomization factor of the retry delay.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
Metabase
- Configuration file name:
saml-application-name
This application name will be used for requests to the Identity Provider.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
- Configuration file name:
saml-attribute-email
SAML attribute for the user's email address.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
- Configuration file name:
saml-attribute-firstname
SAML attribute for the user's first name.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
member_of
- Configuration file name:
saml-attribute-group
SAML attribute for group syncing.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
- Configuration file name:
saml-attribute-lastname
SAML attribute for the user's last name.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
false
- Configuration file name:
saml-enabled
Is SAML authentication configured and enabled?
Only available on Metabase Pro and Enterprise plans.
- Type: json
- Default:
{}
- Configuration file name:
saml-group-mappings
JSON containing SAML to Metabase group mappings.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
false
- Configuration file name:
saml-group-sync
Enable group membership synchronization with SAML.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
saml-identity-provider-certificate
Encoded certificate for the identity provider. Depending on your IdP, you might need to download this, open it in a text editor, then copy and paste the certificates contents here.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
saml-identity-provider-issuer
This is a unique identifier for the IdP. Often referred to as Entity ID or simply Issuer. Depending
on your IdP, this usually looks something like http://www.example.com/141xkex604w0Q5PN724v
.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
saml-identity-provider-uri
This is the URL where your users go to log in to your identity provider. Depending on which IdP you're
using, this usually looks like https://your-org-name.example.com
or https://example.com/app/my_saml_app/abc123/sso/saml
.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
metabase
- Configuration file name:
saml-keystore-alias
Alias for the key that Metabase should use for signing SAML requests.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
changeit
- Configuration file name:
saml-keystore-password
Password for opening the keystore.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Configuration file name:
saml-keystore-path
Absolute path to the Keystore file to use for signing SAML requests.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
false
- Configuration file name:
saml-slo-enabled
Is SAML Single Log Out enabled?
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
true
- Configuration file name:
saml-user-provisioning-enabled
When we enable SAML user provisioning, we automatically create a Metabase account on SAML signin for users who don't have one.
- Type: boolean
- Default:
true
- Exported as:
search-typeahead-enabled
. - Configuration file name:
search-typeahead-enabled
Enable typeahead search in the Metabase navbar?
- Type: string
- Default:
null
- Configuration file name:
send-new-sso-user-admin-email
Should new email notifications be sent to admins, for all new SSO users?
- Type: keyword
- Default:
:lax
- Configuration file name:
session-cookie-samesite
Value for the session cookies SameSite
directive.
See Embedding Metabase in a different domain. Related to MB_EMBEDDING_APP_ORIGIN. Read more about interactive Embedding. Learn more about SameSite cookies.
- Type: boolean
- Default:
null
- Configuration file name:
session-cookies
When set, enforces the use of session cookies for all users which expire when the browser is closed.
The user login session will always expire after the amount of time defined in MAX_SESSION_AGE (by default 2 weeks). This overrides the “Remember me” checkbox when logging in. Also see the Changing session expiration documentation page.
- Type: json
- Default:
null
- Configuration file name:
session-timeout
Time before inactive users are logged out. By default, sessions last indefinitely.
Has to be in the JSON format "{"amount":120,"unit":"minutes"}"
where the unit is one of "seconds", "minutes" or "hours".
- Type: boolean
- Default:
false
- Exported as:
setup-embedding-autoenabled
. - Configuration file name:
setup-embedding-autoenabled
Indicates if embedding has enabled automatically during the setup because the user was interested in embedding.
- Type: boolean
- Default:
false
- Exported as:
setup-license-active-at-setup
. - Configuration file name:
setup-license-active-at-setup
Indicates if at the end of the setup a valid license was active.
- Type: boolean
- Default:
null
- Configuration file name:
show-database-syncing-modal
Whether an introductory modal should be shown after the next database connection is added. Defaults to false if any non-default database has already finished syncing for this instance.
- Type: boolean
- Default:
true
- Exported as:
show-homepage-data
. - Configuration file name:
show-homepage-data
Whether or not to display data on the homepage. Admins might turn this off in order to direct users to better content than raw data.
- Type: boolean
- Default:
true
- Exported as:
show-homepage-xrays
. - Configuration file name:
show-homepage-xrays
Whether or not to display x-ray suggestions on the homepage. They will also be hidden if any dashboards are pinned. Admins might hide this to direct users to better content than raw data.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
true
- Configuration file name:
show-metabase-links
Whether or not to display Metabase links outside admin settings.
Only available on Metabase Pro and Enterprise plans.
- Type: boolean
- Default:
true
- Exported as:
show-metabot
. - Configuration file name:
show-metabot
Enables Metabot character on the home page.
- Type: boolean
- Default:
true
- Exported as:
show-static-embed-terms
. - Configuration file name:
show-static-embed-terms
Check if the static embedding licensing should be hidden in the static embedding flow.
- Type: string
- Default:
en
- Exported as:
site-locale
. - Configuration file name:
site-locale
The default language for all users across the Metabase UI, system emails, pulses, and alerts. Users can individually override this default language from their own account settings.
- Type: string
- Default:
Metabase
- Exported as:
site-name
. - Configuration file name:
site-name
The name used for this instance of Metabase.
- Type: string
- Default:
null
- Configuration file name:
site-url
This URL is used for things like creating links in emails, auth redirects, and in some embedding scenarios, so changing it could break functionality or get you locked out of this instance.
This URL is critical for things like SSO authentication, email links, embedding and more.
Even difference with http://
vs https://
can cause problems.
Make sure that the address defined is how Metabase is being accessed.
- Type: string
- Default:
null
- Configuration file name:
slack-app-token
Bot user OAuth token for connecting the Metabase Slack app. This should be used for all new Slack integrations starting in Metabase v0.42.0.
- Type: string
- Default:
metabase_files
- Configuration file name:
slack-files-channel
The name of the channel to which Metabase files should be initially uploaded.
- Type: string
- Default:
X-Forwarded-For
- Exported as:
source-address-header
. - Configuration file name:
source-address-header
Identify the source of HTTP requests by this headers value, instead of its remote address.
- Type: integer
- Default:
500
Fetch size for result sets. We want to ensure that the jdbc ResultSet objects are not realizing the entire results in memory.
- Type: boolean
- Default:
true
SQL Parsing is disabled.
- Type: integer
- Default:
180
- Configuration file name:
ssh-heartbeat-interval-sec
Controls how often the heartbeats are sent when an SSH tunnel is established (in seconds).
- Type: keyword
- Default:
:sunday
- Exported as:
start-of-week
. - Configuration file name:
start-of-week
This will affect things like grouping by week or filtering in GUI queries. It won't affect most SQL queries, although it is used to set the WEEK_START session variable in Snowflake.
Only available on Metabase Pro and Enterprise plans.
- Type: string
- Default:
null
- Exported as:
subscription-allowed-domains
. - Configuration file name:
subscription-allowed-domains
Allowed email address domain(s) for new Dashboard Subscriptions and Alerts. To specify multiple domains, separate each domain with a comma, with no space in between. To allow all domains, leave the field empty. This setting doesn’t affect existing subscriptions.
- Type: boolean
- Default:
true
Enable or disable surveys.
- Type: boolean
- Default:
false
- Exported as:
synchronous-batch-updates
. - Configuration file name:
synchronous-batch-updates
Process batches updates synchronously. If true, all submit!
calls will be processed immediately. Default is false.
- Type: integer
- Default:
2000
- Exported as:
unaggregated-query-row-limit
. - Configuration file name:
unaggregated-query-row-limit
Maximum number of rows to return specifically on :rows type queries via the API.
Must be less than 1048575, and less than the number configured in MB_AGGREGATED_QUERY_ROW_LIMIT. This environment variable also affects how many rows Metabase returns in dashboard subscription attachments. See also MB_AGGREGATED_QUERY_ROW_LIMIT.
- Type: json
- Default:
null
- Configuration file name:
uploads-settings
Upload settings.
Only available on Metabase Pro and Enterprise plans.
- Type: keyword
- Default:
:all
- Configuration file name:
user-visibility
Note: Sandboxed users will never see suggestions.
The following environment variables can only be set via the environment. They cannot be set by the configuration file.
Type: integer
Default: 20160
Session expiration, defined in minutes (default is 2 weeks), which will log out users after the defined period and require re-authentication.
Note: This setting is not an idle/inactivity timeout. If you set this to 15 minutes, your users have to login (or re-authenticate) again every 15 minutes. Use MB_SESSION_TIMEOUT to control timeout based on inactivity.
Use MB_SESSION_COOKIES to also expire sessions, when browser is closed.
Also see the Changing session expiration documentation page.
Type: integer
Default: 15
Since: v35.0
Maximum number of connections to the Metabase application database.
Change this to a higher value if you notice that regular usage consumes all or close to all connections. When all connections are in use, Metabase might feel slow or unresponsive when clicking around the interface.
To see how many connections are being used, check the Metabase logs and look for lines that contains the following: … App DB connections: 12/15 …
. In this example, 12 out of 15 available connections are being used.
See MB_JDBC_DATA_WAREHOUSE_MAX_CONNECTION_POOL_SIZE for setting maximum connections to the databases connected to Metabase.
Type: integer
Default: 50
Since: v35.0
Maximum number of async Jetty threads. If not set, then MB_JETTY_MAXTHREADS will be used, otherwise it will use the default.
Type: integer
Default: 20
Limits the number of rows Metabase will display in tables sent with dashboard subscriptions and alerts. Range: 1-100. To limit the total number of rows included in the file attachment for an email dashboard subscription, use MB_UNAGGREGATED_QUERY_ROW_LIMIT.
Only available on Metabase Pro and Enterprise plans.
Type: integer
Default: 720 (Metabase keeps all rows)
Sets the maximum number of days Metabase preserves rows for the following application database tables:
query_execution
audit_log
view_log
Twice a day, Metabase will delete rows older than this threshold.
The minimum value is 30
days (Metabase will treat entered values of 1
to 29
the same as 30
). If set to 0
, Metabase will keep all rows.
Type: boolean
Default: true
Color log lines. When set to false
it will disable log line colors. This is disabled on Windows. Related to MB_EMOJI_IN_LOGS.
Type: string
Default: config.yml
This feature requires the config-text-file
feature flag on your token.
Type: boolean
Default: true
Whether or not the use of custom GeoJSON is enabled.
Type: boolean
Default: true
When set to false
, Metabase will print migrations needed to be done in the application database and exit. Those migrations need to be applied manually. When true
, Metabase will automatically make changes to the application database. This is not related to migrating away from H2.
Type: string
Default: null
A JDBC-style connection URI that can be used instead of most of MB_DB_*
like MB_DB_HOST. Also used when certain Connection String parameters are required for the connection. The connection type requirement is the same as MB_DB_TYPE.
Examples:
jdbc:postgresql://db.example.com:5432/mydb?user=dbuser&password=dbpassword
jdbc:postgresql://db.example.com:5432/mydb?user=dbuser&password=dbpassword&ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory
jdbc:mysql://db.example.com:3306/mydb?user=dbuser&password=dbpassword
Type: string
Default: null
The database name of the application database used with MB_DB_HOST.
Type: string
Default: "metabase.db"
Location of H2 database file. Should not include the .mv.db
(or .h2.db
) file extension. Used when MB_DB_TYPE is set to"h2"
.
Can also be used when migrating away from H2 to specify where the existing data should be read from.
Type: string
Default: null
The host name or IP address of the application database. Used when MB_DB_TYPE is different than "h2"
.
Type: boolean
Default: null
Used for testing with MB_DB_FILE.
Type: string
Default: null
The password for MB_DB_HOST.
Type: integer
Default: null
The port for MB_DB_HOST.
Type: integer
Default: 180
Timeout in minutes for query execution, both Metabase application database and data connections. In case you're execute a query and run into a timeout, you might consider increasing this value.
Type: string ("h2"
, "postgres"
, "mysql"
)
Default: "h2"
When "h2"
, the application database is loaded from MB_DB_FILE, otherwise MB_DB_HOST will be used to define application database.
Type: string
Default: null
The username for MB_DB_HOST.
Type: string
Default: null
Used during development of third-party drivers. Set the value to have that plugin manifest get loaded during startup. Specify multiple plugin manifests by comma-separating them.
Type: boolean
Default: false
When true
, this will disable session throttling. Warning: It is not recommended to disable throttling, since it is a protective measure against brute-force attacks.
Use MB_SOURCE_ADDRESS_HEADER to set the IP address of the remote client from e.g. a reverse-proxy.
Type: boolean
Default: true
Emojis on log lines. When set to false
it will disable log line emojis. This is disabled on Windows. Related to MB_COLORIZE_LOGS.
Type: boolean
Default: null
When true
, this will enable /api/testing
endpoint. Warning: This should never be enabled in production system.
Type: boolean
Default: true
Allow users to explore data using X-rays.
Type: string
Default: null
When set, this will encrypt database credentials stored in the application database. Requirement: minimum 16 characters base64-encoded string.
Also see documentation page Encrypting database details at rest.
Type: integer
Default: 1200
Since: v47.4
Metabase's query processor will normally kill connections when their queries time out, but in practice some connections can be severed and go undetected by Metabase, staying alive even after a query returns or times out. This environment variable tells Metabase how long to wait before killing connections if no response is received from the connection.
This variable affects connections that are severed and undetected by Metabase (that is, in situations where Metabase never receives a connection closed signal and is treating an inactive connection as active). You may want to adjust this variable's value if your connection is unreliable or is a dynamic connections behind a SSH tunnel where the connection to the SSH tunnel host may stay active even after the connection from the SSH tunnel host to your database is severed.
Unless set otherwise, the default production value for metabase.query-processor.query-timeout-ms
is used which is 1,200,000 ms (i.e. 1,200 seconds or 20 minutes).
Type: integer
Default: 600000
Since: v35.0
Timeout of Jetty async threads, defined in milliseconds. The default is 10 minutes. Very few things might reach that timeout, since they return some type of data before, but things like CSV downloads might.
Type: boolean
Default: false
Use daemon threads.
Type: string
Default: localhost
for JAR, 0.0.0.0
for Docker
Configure a host either as a host name or IP address to identify a specific network interface on which to listen. If set to "0.0.0.0"
, Metabase listens on all network interfaces. It will listen on the port specified in MB_JETTY_PORT.
Type: boolean
Default: true
Blocks the thread until server ends.
Type: integer
Default: 200000
Maximum idle time for a connection, in milliseconds.
Type: integer
Default: 50
Maximum number of threads.
Change this to a higher value if you notice that regular usage consumes all or close to all threads. When all threads are in use Metabase might feel slow or unresponsive when clicking around the interface.
To see how many threads are being used, check the Metabase logs and look for lines that contain the following: … Jetty threads: 45/50 …
, which in this case would indicate 45 out of 50 available threads are being used.
Related MB_ASYNC_QUERY_THREAD_POOL_SIZE.
Type: integer
Default: 8
Minimum number of threads.
Type: integer
Default: 3000
Configure which port to use for HTTP. It will listen on the interface specified in MB_JETTY_HOST.
Type: integer
Default: 8192
Since: v36.0
Maximum size of a request header, in bytes. Increase this value if you are experiencing errors like "Request Header Fields Too Large".
Type: boolean
Default: null
When set to true
, will enable HTTPS with the options configured in the MB_JETTY_SSL_*
variables.
Also see the Customizing Jetty web server documentation page.
Type: boolean
Default: null
Configure Java SSL client authentication. When set to true
, client certificates are required and verified by the certificate authority in the TrustStore.
Type: string
Default: null
Path to Java KeyStore file.
Type: string
Default: null
Password for Java KeyStore file.
Type: integer
Default: null
Configure which port to use for HTTPS. It will listen on the interface specified in MB_JETTY_HOST.
Type: string
Default: null
Path to Java TrustStore file.
Type: string
Default: null
Password for Java TrustStore file.
Only available on Metabase Pro and Enterprise plans.
Type: string
Default: ""
Default page to show people when they log in.
Type: Boolean
Default: True
If you want to exclude the Metabase analytics collection, you can set MB_LOAD_ANALYTICS_CONTENT=false
. Setting this environment variable to false can also come in handy when migrating environments, as it can simplify the migration process.
Type: boolean
Default: false
Metabase will send a sentiment survey to people who create a number of questions and dashboards to gauge how well the product is doing with respect to making things easy for creators.
Metabase will only send these emails to people who have in the past 2 months:
- Created at least 10 questions total
- Created at least 2 SQL questions
- Created at least 1 dashboard
If you're whitelabeling Metabase, these survey emails will only be sent to admins for that instance who meet that criteria.
If you don't want Metabase to send these emails, set MB_NO_SURVEYS=true
.
Type: string
Default: ""
Comma-separated namespaces to trace. WARNING: Could log sensitive information like database passwords.
Type: string ("weak"
, "normal"
, "strong"
)
Default: "normal"
Enforce a password complexity rule to increase security for regular logins. This only applies to new users or users that are changing their password. Related MB_PASSWORD_LENGTH
weak
no character constraintsnormal
at least 1 digitstrong
minimum 8 characters w/ 2 lowercase, 2 uppercase, 1 digit, and 1 special character
Type: integer
Default: 6
Set a minimum password length to increase security for regular logins. This only applies to new users or users that are changing their password. Uses the length of MB_PASSWORD_COMPLEXITY if not set.
Type: string
Default: "plugins"
Path of the "plugins" directory, which is used to store the Metabase database drivers. The user who is running Metabase should have permission to write to the directory. When running the JAR, the default directory is plugins
, created in the same location as the JAR file. When running Docker, the default directory is /plugins
.
The location is where custom third-party drivers should be added. Then Metabase will load the driver on startup, which can be verified in the log.
Type: string
Default: null
The license token used for Pro and Enterprise to enable premium features on the Enterprise edition. It is also used for the deprecated "Premium Embedding" functionality on the OSS edition.
Type: string
Default: "db"
Current cache backend. Dynamically rebindable primarily for test purposes.
Type: boolean
Default: true
Since: v39.0
Show auto-suggestions when using the global search in the top navigation bar.
Type: boolean
Default: true
Since: v39.0
Send email notification to user, when they login from a new device. Set to false
to stop sending "We've noticed a new login on your Metabase account" emails for all users.
Also, this variable controls the geocoding service that Metabase uses to know the location from where your users logged in. Setting this variable to false also disables this reverse geocoding functionality.
Only available on Metabase Pro and Enterprise plans.
Type: boolean
Default: true
Send email notifications to users in Admin group, when a new SSO users is created on Metabase.
Only available on Metabase Pro and Enterprise plans.
Type: string ("none"
, "lax"
, "strict"
)
Default: "lax"
See Embedding Metabase in a different domain.
Related to MB_EMBEDDING_APP_ORIGIN. Read more about interactive Embedding.
Learn more about SameSite cookies: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite
Type: boolean
Default: null
When set to true
, the user login session will expire when the browser is closed. The user login session will always expire after the amount of time defined in MAX_SESSION_AGE (by default 2 weeks).
This overrides the "Remember me" checkbox when logging in.
Also see the Changing session expiration documentation page.
Type: string
Default: null
An UUID token used to signify that an instance has permissions to create the initial User. This is created upon the first launch of Metabase, by the first instance; once used, it is cleared out, never to be used again.
Only available on Metabase Pro and Enterprise plans.
Type: boolean
Default: true
Since: v44.0
Display the lighthouse illustration on the home and login pages.
Type: string
Default: "true"
Since: v48.4
Setting MB_JETTY_SKIP_SNI=true
(the default setting) turns off the Server Name Indication (SNI) checks in the Jetty web server. Normally you would leave this enabled. If, however, you're terminating the Transport Layer Security (TLS) connection on Metabase itself, and you're getting an error like HTTP ERROR 400 Invalid SNI
, consider either setting MB_JETTY_SKIP_SNI=false
, or use another SSL certificate that exactly matches the domain name of the server.
Type: string
Default: X-Forwarded-For
Identify the source of HTTP requests by this header's value, instead of its remote address. Related to MB_DISABLE_SESSION_THROTTLE.
Type: string
Default: null
Base-64 encoded public key for this sites SSL certificate. Specify this to enable HTTP Public Key Pinning. Using HPKP is no longer recommended. See http://mzl.la/1EnfqBf for more information.