docs/main/administration-guide/configure/environment-variables.mdx
You can use environment variables to manage the configuration. Environment variables override settings in config.json. If a change to a setting in config.json requires a restart for it to take effect, then changes to the corresponding environment variable also require a server restart.
The name of the environment variable for any setting can be derived from the name of that setting in config.json. For example, to derive the name of the Site URL setting:
config.json. In this case, ServiceSettings.SiteURL.MM_ to the beginning and convert all characters to uppercase and replace the . with _. For example, MM_SERVICESETTINGS_SITEURL.export MM_SERVICESETTINGS_SITEURL="http://example.com".Environment=<>, or EnvironmentFile=<path/to/file>. In the second case, the file specified contains the list of environment variables to set.MM_PLUGINSETTINGS_PLUGINS and MM_PLUGINSETTINGS_PLUGINSTATES. This is especially helpful for Helm configuration files, provided all plugins are configured at the same time. For example, MM_PLUGINSETTINGS_PLUGINSTATES="{\"com.mattermost.calls\":{\"Enable\":true},\"com.mattermost.nps\":{\"Enable\":true}}".config.json as that setting's value.config.json or in environment variables, the Mattermost server uses the setting's default value as documented in the sections below on this page.You can use an environment variable to override any license in the database or file configuration without replacing those licenses. When starting the server, specify the license key as MM_LICENSE with the contents of a license file.
If MM_LICENSE is set to a non-empty string, but the license specified is not valid, the Mattermost server will be started without a license.
In a High Availability deployment, using an environment variable to override a server license only affects the individual app server and doesn't propagate to other servers in the cluster.
</Note>This custom configuration applies only if the values are not already present in the current server configuration.
custom.json.MM_CUSTOM_DEFAULTS_PATH=custom.json.