mirror of
				https://github.com/gristlabs/grist-core.git
				synced 2025-06-13 20:53:59 +00:00 
			
		
		
		
	(docs) README.md: reformat envvars table
This is just a source-level reformatting to realign it.
This commit is contained in:
		
							parent
							
								
									dc70cf59d3
								
							
						
					
					
						commit
						5fad8a2baa
					
				
							
								
								
									
										130
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										130
									
								
								README.md
									
									
									
									
									
								
							@ -233,72 +233,72 @@ For more on Grist Labs' history and principles, see our [About Us](https://www.g
 | 
			
		||||
 | 
			
		||||
Grist can be configured in many ways. Here are the main environment variables it is sensitive to:
 | 
			
		||||
 | 
			
		||||
Variable | Purpose
 | 
			
		||||
-------- | -------
 | 
			
		||||
ALLOWED_WEBHOOK_DOMAINS | comma-separated list of permitted domains to use in webhooks (e.g. webhook.site,zapier.com). You can set this to `*` to allow all domains, but if doing so, we recommend using a carefully locked-down proxy (see `GRIST_HTTPS_PROXY`) if you do not entirely trust users. Otherwise services on your internal network may become vulnerable to manipulation.
 | 
			
		||||
APP_DOC_URL | doc worker url, set when starting an individual doc worker (other servers will find doc worker urls via redis)
 | 
			
		||||
APP_DOC_INTERNAL_URL | like `APP_DOC_URL` but used by the home server to reach the server using an internal domain name resolution (like in a docker environment). Defaults to `APP_DOC_URL`
 | 
			
		||||
APP_HOME_URL | url prefix for home api (home and doc servers need this)
 | 
			
		||||
APP_STATIC_URL | url prefix for static resources
 | 
			
		||||
APP_STATIC_INCLUDE_CUSTOM_CSS | set to "true" to include custom.css (from APP_STATIC_URL) in static pages
 | 
			
		||||
APP_UNTRUSTED_URL   | URL at which to serve/expect plugin content.
 | 
			
		||||
GRIST_ADAPT_DOMAIN  | set to "true" to support multiple base domains (careful, host header should be trustworthy)
 | 
			
		||||
GRIST_APP_ROOT      | directory containing Grist sandbox and assets (specifically the sandbox and static subdirectories).
 | 
			
		||||
GRIST_BACKUP_DELAY_SECS | wait this long after a doc change before making a backup
 | 
			
		||||
GRIST_BOOT_KEY | if set, offer diagnostics at /boot/GRIST_BOOT_KEY
 | 
			
		||||
GRIST_DEFAULT_EMAIL | if set, login as this user if no other credentials presented
 | 
			
		||||
GRIST_DEFAULT_PRODUCT  | if set, this controls enabled features and limits of new sites. See names of PRODUCTS in Product.ts.
 | 
			
		||||
GRIST_DEFAULT_LOCALE  | Locale to use as fallback when Grist cannot honour the browser locale.
 | 
			
		||||
GRIST_DOMAIN        | in hosted Grist, Grist is served from subdomains of this domain.  Defaults to "getgrist.com".
 | 
			
		||||
GRIST_EXPERIMENTAL_PLUGINS | enables experimental plugins
 | 
			
		||||
GRIST_ENABLE_REQUEST_FUNCTION | enables the REQUEST function. This function performs HTTP requests in a similar way to `requests.request`. This function presents a significant security risk, since it can let users call internal endpoints when Grist is available publicly. This function can also cause performance issues. Unset by default.
 | 
			
		||||
GRIST_HIDE_UI_ELEMENTS | comma-separated list of UI features to disable. Allowed names of parts: `helpCenter,billing,templates,createSite,multiSite,multiAccounts,sendToDrive,tutorials,supportGrist`. If a part also exists in GRIST_UI_FEATURES, it will still be disabled.
 | 
			
		||||
GRIST_HOST          | hostname to use when listening on a port.
 | 
			
		||||
GRIST_HTTPS_PROXY   | if set, use this proxy for webhook payload delivery.
 | 
			
		||||
GRIST_ID_PREFIX | for subdomains of form o-*, expect or produce o-${GRIST_ID_PREFIX}*.
 | 
			
		||||
GRIST_IGNORE_SESSION | if set, Grist will not use a session for authentication.
 | 
			
		||||
GRIST_INCLUDE_CUSTOM_SCRIPT_URL | if set, will load the referenced URL in a `<script>` tag on all app pages.
 | 
			
		||||
GRIST_INST_DIR      | path to Grist instance configuration files, for Grist server.
 | 
			
		||||
GRIST_LIST_PUBLIC_SITES | if set to true, sites shared with the public will be listed for anonymous users. Defaults to false.
 | 
			
		||||
GRIST_MANAGED_WORKERS | if set, Grist can assume that if a url targeted at a doc worker returns a 404, that worker is gone
 | 
			
		||||
GRIST_MAX_UPLOAD_ATTACHMENT_MB | max allowed size for attachments (0 or empty for unlimited).
 | 
			
		||||
GRIST_MAX_UPLOAD_IMPORT_MB | max allowed size for imports (except .grist files) (0 or empty for unlimited).
 | 
			
		||||
GRIST_OFFER_ALL_LANGUAGES | if set, all translated langauages are offered to the user (by default, only languages with a special 'good enough' key set are offered to user).
 | 
			
		||||
GRIST_ORG_IN_PATH | if true, encode org in path rather than domain
 | 
			
		||||
GRIST_PAGE_TITLE_SUFFIX | a string to append to the end of the `<title>` in HTML documents. Defaults to `" - Grist"`. Set to `_blank` for no suffix at all.
 | 
			
		||||
~GRIST_PROXY_AUTH_HEADER~ | Deprecated, and interpreted as a synonym for GRIST_FORWARD_AUTH_HEADER.
 | 
			
		||||
GRIST_ROUTER_URL | optional url for an api that allows servers to be (un)registered with a load balancer
 | 
			
		||||
GRIST_SERVE_SAME_ORIGIN | set to "true" to access home server and doc workers on the same protocol-host-port as the top-level page, same as for custom domains (careful, host header should be trustworthy)
 | 
			
		||||
GRIST_SERVERS | the types of server to setup. Comma separated values which may contain "home", "docs", static" and/or "app". Defaults to "home,docs,static".
 | 
			
		||||
GRIST_SESSION_COOKIE | if set, overrides the name of Grist's cookie
 | 
			
		||||
GRIST_SESSION_DOMAIN | if set, associates the cookie with the given domain - otherwise defaults to GRIST_DOMAIN
 | 
			
		||||
GRIST_SESSION_SECRET | a key used to encode sessions
 | 
			
		||||
GRIST_SKIP_BUNDLED_WIDGETS | if set, Grist will ignore any bundled widgets included via NPM packages.
 | 
			
		||||
GRIST_ANON_PLAYGROUND    | When set to 'false' deny anonymous users access to the home page
 | 
			
		||||
GRIST_FORCE_LOGIN    | Much like GRIST_ANON_PLAYGROUND but don't support anonymous access at all (features like sharing docs publicly requires authentication)
 | 
			
		||||
GRIST_SINGLE_ORG | set to an org "domain" to pin client to that org
 | 
			
		||||
GRIST_TEMPLATE_ORG | set to an org "domain" to show public docs from that org
 | 
			
		||||
GRIST_HELP_CENTER | set the help center link ref
 | 
			
		||||
FREE_COACHING_CALL_URL | set the link to the human help (example: email adress or meeting scheduling tool)
 | 
			
		||||
GRIST_CONTACT_SUPPORT_URL | set the link to contact support on error pages (example: email adress or online form)
 | 
			
		||||
GRIST_SUPPORT_ANON | if set to 'true', show UI for anonymous access (not shown by default)
 | 
			
		||||
GRIST_SUPPORT_EMAIL | if set, give a user with the specified email support powers. The main extra power is the ability to share sites, workspaces, and docs with all users in a listed way.
 | 
			
		||||
GRIST_TELEMETRY_LEVEL | the telemetry level. Can be set to: `off` (default), `limited`, or `full`.
 | 
			
		||||
GRIST_THROTTLE_CPU | if set, CPU throttling is enabled
 | 
			
		||||
GRIST_TRUST_PLUGINS | if set, plugins are expect to be served from the same host as the rest of the Grist app, rather than from a distinct host. Ordinarily, plugins are served from a distinct host so that the cookies used by the Grist app are not automatically available to them. Enable this only if you understand the security implications.
 | 
			
		||||
GRIST_USER_ROOT     | an extra path to look for plugins in - Grist will scan for plugins in `$GRIST_USER_ROOT/plugins`.
 | 
			
		||||
GRIST_UI_FEATURES | comma-separated list of UI features to enable. Allowed names of parts: `helpCenter,billing,templates,createSite,multiSite,multiAccounts,sendToDrive,tutorials,supportGrist`. If a part also exists in GRIST_HIDE_UI_ELEMENTS, it won't be enabled.
 | 
			
		||||
GRIST_UNTRUSTED_PORT | if set, plugins will be served from the given port. This is an alternative to setting APP_UNTRUSTED_URL.
 | 
			
		||||
GRIST_WIDGET_LIST_URL | a url pointing to a widget manifest, by default `https://github.com/gristlabs/grist-widget/releases/download/latest/manifest.json` is used
 | 
			
		||||
COOKIE_MAX_AGE      | session cookie max age, defaults to 90 days; can be set to "none" to make it a session cookie
 | 
			
		||||
HOME_PORT           | port number to listen on for REST API server; if set to "share", add API endpoints to regular grist port.
 | 
			
		||||
PORT                | port number to listen on for Grist server
 | 
			
		||||
REDIS_URL           | optional redis server for browser sessions and db query caching
 | 
			
		||||
GRIST_SKIP_REDIS_CHECKSUM_MISMATCH | Experimental. If set, only warn if the checksum in Redis differs with the one in your S3 backend storage. You may turn it on if your backend storage implements the [read-after-write consistency](https://aws.amazon.com/fr/blogs/aws/amazon-s3-update-strong-read-after-write-consistency/). Defaults to false.
 | 
			
		||||
GRIST_SNAPSHOT_TIME_CAP       | optional. Define the caps for tracking buckets. Usage: {"hour": 25, "day": 32, "isoWeek": 12, "month": 96, "year": 1000}
 | 
			
		||||
GRIST_SNAPSHOT_KEEP           | optional. Number of recent snapshots to retain unconditionally for a document, regardless of when they were made
 | 
			
		||||
GRIST_PROMCLIENT_PORT         | optional. If set, serve the Prometheus metrics on the specified port number. ⚠️ Be sure to use a port which is not publicly exposed ⚠️.
 | 
			
		||||
| Variable                           | Purpose                                                                                                                                                                                                                                                                                                                                                       |
 | 
			
		||||
|------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | 
			
		||||
| ALLOWED_WEBHOOK_DOMAINS            | comma-separated list of permitted domains to use in webhooks (e.g. webhook.site,zapier.com). You can set this to `*` to allow all domains, but if doing so, we recommend using a carefully locked-down proxy (see `GRIST_HTTPS_PROXY`) if you do not entirely trust users. Otherwise services on your internal network may become vulnerable to manipulation. |
 | 
			
		||||
| APP_DOC_URL                        | doc worker url, set when starting an individual doc worker (other servers will find doc worker urls via redis)                                                                                                                                                                                                                                                |
 | 
			
		||||
| APP_DOC_INTERNAL_URL               | like `APP_DOC_URL` but used by the home server to reach the server using an internal domain name resolution (like in a docker environment). Defaults to `APP_DOC_URL`                                                                                                                                                                                         |
 | 
			
		||||
| APP_HOME_URL                       | url prefix for home api (home and doc servers need this)                                                                                                                                                                                                                                                                                                      |
 | 
			
		||||
| APP_STATIC_URL                     | url prefix for static resources                                                                                                                                                                                                                                                                                                                               |
 | 
			
		||||
| APP_STATIC_INCLUDE_CUSTOM_CSS      | set to "true" to include custom.css (from APP_STATIC_URL) in static pages                                                                                                                                                                                                                                                                                     |
 | 
			
		||||
| APP_UNTRUSTED_URL                  | URL at which to serve/expect plugin content.                                                                                                                                                                                                                                                                                                                  |
 | 
			
		||||
| GRIST_ADAPT_DOMAIN                 | set to "true" to support multiple base domains (careful, host header should be trustworthy)                                                                                                                                                                                                                                                                   |
 | 
			
		||||
| GRIST_APP_ROOT                     | directory containing Grist sandbox and assets (specifically the sandbox and static subdirectories).                                                                                                                                                                                                                                                           |
 | 
			
		||||
| GRIST_BACKUP_DELAY_SECS            | wait this long after a doc change before making a backup                                                                                                                                                                                                                                                                                                      |
 | 
			
		||||
| GRIST_BOOT_KEY                     | if set, offer diagnostics at /boot/GRIST_BOOT_KEY                                                                                                                                                                                                                                                                                                             |
 | 
			
		||||
| GRIST_DATA_DIR                     | Directory in which to store documents. Defaults to `docs/` relative to the Grist application directory. In Grist's default Docker image, its default value is /persist/docs so that it will be used as a mounted volume.                                                                                                                                      |
 | 
			
		||||
| GRIST_DEFAULT_EMAIL                | if set, login as this user if no other credentials presented                                                                                                                                                                                                                                                                                                  |
 | 
			
		||||
| GRIST_DEFAULT_PRODUCT              | if set, this controls enabled features and limits of new sites. See names of PRODUCTS in Product.ts.                                                                                                                                                                                                                                                          |
 | 
			
		||||
| GRIST_DEFAULT_LOCALE               | Locale to use as fallback when Grist cannot honour the browser locale.                                                                                                                                                                                                                                                                                        |
 | 
			
		||||
| GRIST_DOMAIN                       | in hosted Grist, Grist is served from subdomains of this domain.  Defaults to "getgrist.com".                                                                                                                                                                                                                                                                 |
 | 
			
		||||
| GRIST_EXPERIMENTAL_PLUGINS         | enables experimental plugins                                                                                                                                                                                                                                                                                                                                  |
 | 
			
		||||
| GRIST_ENABLE_REQUEST_FUNCTION      | enables the REQUEST function. This function performs HTTP requests in a similar way to `requests.request`. This function presents a significant security risk, since it can let users call internal endpoints when Grist is available publicly. This function can also cause performance issues. Unset by default.                                            |
 | 
			
		||||
| GRIST_HIDE_UI_ELEMENTS             | comma-separated list of UI features to disable. Allowed names of parts: `helpCenter,billing,templates,createSite,multiSite,multiAccounts,sendToDrive,tutorials,supportGrist`. If a part also exists in GRIST_UI_FEATURES, it will still be disabled.                                                                                                          |
 | 
			
		||||
| GRIST_HOST                         | hostname to use when listening on a port.                                                                                                                                                                                                                                                                                                                     |
 | 
			
		||||
| GRIST_HTTPS_PROXY                  | if set, use this proxy for webhook payload delivery.                                                                                                                                                                                                                                                                                                          |
 | 
			
		||||
| GRIST_ID_PREFIX                    | for subdomains of form o-*, expect or produce o-${GRIST_ID_PREFIX}*.                                                                                                                                                                                                                                                                                          |
 | 
			
		||||
| GRIST_IGNORE_SESSION               | if set, Grist will not use a session for authentication.                                                                                                                                                                                                                                                                                                      |
 | 
			
		||||
| GRIST_INCLUDE_CUSTOM_SCRIPT_URL    | if set, will load the referenced URL in a `<script>` tag on all app pages.                                                                                                                                                                                                                                                                                    |
 | 
			
		||||
| GRIST_INST_DIR                     | path to Grist instance configuration files, for Grist server.                                                                                                                                                                                                                                                                                                 |
 | 
			
		||||
| GRIST_LIST_PUBLIC_SITES            | if set to true, sites shared with the public will be listed for anonymous users. Defaults to false.                                                                                                                                                                                                                                                           |
 | 
			
		||||
| GRIST_MANAGED_WORKERS              | if set, Grist can assume that if a url targeted at a doc worker returns a 404, that worker is gone                                                                                                                                                                                                                                                            |
 | 
			
		||||
| GRIST_MAX_UPLOAD_ATTACHMENT_MB     | max allowed size for attachments (0 or empty for unlimited).                                                                                                                                                                                                                                                                                                  |
 | 
			
		||||
| GRIST_MAX_UPLOAD_IMPORT_MB         | max allowed size for imports (except .grist files) (0 or empty for unlimited).                                                                                                                                                                                                                                                                                |
 | 
			
		||||
| GRIST_OFFER_ALL_LANGUAGES          | if set, all translated langauages are offered to the user (by default, only languages with a special 'good enough' key set are offered to user).                                                                                                                                                                                                              |
 | 
			
		||||
| GRIST_ORG_IN_PATH                  | if true, encode org in path rather than domain                                                                                                                                                                                                                                                                                                                |
 | 
			
		||||
| GRIST_PAGE_TITLE_SUFFIX            | a string to append to the end of the `<title>` in HTML documents. Defaults to `" - Grist"`. Set to `_blank` for no suffix at all.                                                                                                                                                                                                                             |
 | 
			
		||||
| ~GRIST_PROXY_AUTH_HEADER~          | Deprecated, and interpreted as a synonym for GRIST_FORWARD_AUTH_HEADER.                                                                                                                                                                                                                                                                                       |
 | 
			
		||||
| GRIST_ROUTER_URL                   | optional url for an api that allows servers to be (un)registered with a load balancer                                                                                                                                                                                                                                                                         |
 | 
			
		||||
| GRIST_SERVE_SAME_ORIGIN            | set to "true" to access home server and doc workers on the same protocol-host-port as the top-level page, same as for custom domains (careful, host header should be trustworthy)                                                                                                                                                                             |
 | 
			
		||||
| GRIST_SERVERS                      | the types of server to setup. Comma separated values which may contain "home", "docs", static" and/or "app". Defaults to "home,docs,static".                                                                                                                                                                                                                  |
 | 
			
		||||
| GRIST_SESSION_COOKIE               | if set, overrides the name of Grist's cookie                                                                                                                                                                                                                                                                                                                  |
 | 
			
		||||
| GRIST_SESSION_DOMAIN               | if set, associates the cookie with the given domain - otherwise defaults to GRIST_DOMAIN                                                                                                                                                                                                                                                                      |
 | 
			
		||||
| GRIST_SESSION_SECRET               | a key used to encode sessions                                                                                                                                                                                                                                                                                                                                 |
 | 
			
		||||
| GRIST_SKIP_BUNDLED_WIDGETS         | if set, Grist will ignore any bundled widgets included via NPM packages.                                                                                                                                                                                                                                                                                      |
 | 
			
		||||
| GRIST_ANON_PLAYGROUND              | When set to 'false' deny anonymous users access to the home page                                                                                                                                                                                                                                                                                              |
 | 
			
		||||
| GRIST_FORCE_LOGIN                  | Much like GRIST_ANON_PLAYGROUND but don't support anonymous access at all (features like sharing docs publicly requires authentication)                                                                                                                                                                                                                       |
 | 
			
		||||
| GRIST_SINGLE_ORG                   | set to an org "domain" to pin client to that org                                                                                                                                                                                                                                                                                                              |
 | 
			
		||||
| GRIST_TEMPLATE_ORG                 | set to an org "domain" to show public docs from that org                                                                                                                                                                                                                                                                                                      |
 | 
			
		||||
| GRIST_HELP_CENTER                  | set the help center link ref                                                                                                                                                                                                                                                                                                                                  |
 | 
			
		||||
| FREE_COACHING_CALL_URL             | set the link to the human help (example: email adress or meeting scheduling tool)                                                                                                                                                                                                                                                                             |
 | 
			
		||||
| GRIST_CONTACT_SUPPORT_URL          | set the link to contact support on error pages (example: email adress or online form)                                                                                                                                                                                                                                                                         |
 | 
			
		||||
| GRIST_SUPPORT_ANON                 | if set to 'true', show UI for anonymous access (not shown by default)                                                                                                                                                                                                                                                                                         |
 | 
			
		||||
| GRIST_SUPPORT_EMAIL                | if set, give a user with the specified email support powers. The main extra power is the ability to share sites, workspaces, and docs with all users in a listed way.                                                                                                                                                                                         |
 | 
			
		||||
| GRIST_TELEMETRY_LEVEL              | the telemetry level. Can be set to: `off` (default), `limited`, or `full`.                                                                                                                                                                                                                                                                                    |
 | 
			
		||||
| GRIST_THROTTLE_CPU                 | if set, CPU throttling is enabled                                                                                                                                                                                                                                                                                                                             |
 | 
			
		||||
| GRIST_TRUST_PLUGINS                | if set, plugins are expect to be served from the same host as the rest of the Grist app, rather than from a distinct host. Ordinarily, plugins are served from a distinct host so that the cookies used by the Grist app are not automatically available to them. Enable this only if you understand the security implications.                               |
 | 
			
		||||
| GRIST_USER_ROOT                    | an extra path to look for plugins in - Grist will scan for plugins in `$GRIST_USER_ROOT/plugins`.                                                                                                                                                                                                                                                             |
 | 
			
		||||
| GRIST_UI_FEATURES                  | comma-separated list of UI features to enable. Allowed names of parts: `helpCenter,billing,templates,createSite,multiSite,multiAccounts,sendToDrive,tutorials,supportGrist`. If a part also exists in GRIST_HIDE_UI_ELEMENTS, it won't be enabled.                                                                                                            |
 | 
			
		||||
| GRIST_UNTRUSTED_PORT               | if set, plugins will be served from the given port. This is an alternative to setting APP_UNTRUSTED_URL.                                                                                                                                                                                                                                                      |
 | 
			
		||||
| GRIST_WIDGET_LIST_URL              | a url pointing to a widget manifest, by default `https://github.com/gristlabs/grist-widget/releases/download/latest/manifest.json` is used                                                                                                                                                                                                                    |
 | 
			
		||||
| COOKIE_MAX_AGE                     | session cookie max age, defaults to 90 days; can be set to "none" to make it a session cookie                                                                                                                                                                                                                                                                 |
 | 
			
		||||
| HOME_PORT                          | port number to listen on for REST API server; if set to "share", add API endpoints to regular grist port.                                                                                                                                                                                                                                                     |
 | 
			
		||||
| PORT                               | port number to listen on for Grist server                                                                                                                                                                                                                                                                                                                     |
 | 
			
		||||
| REDIS_URL                          | optional redis server for browser sessions and db query caching                                                                                                                                                                                                                                                                                               |
 | 
			
		||||
| GRIST_SKIP_REDIS_CHECKSUM_MISMATCH | Experimental. If set, only warn if the checksum in Redis differs with the one in your S3 backend storage. You may turn it on if your backend storage implements the [read-after-write consistency](https://aws.amazon.com/fr/blogs/aws/amazon-s3-update-strong-read-after-write-consistency/). Defaults to false.                                             |
 | 
			
		||||
| GRIST_SNAPSHOT_TIME_CAP            | optional. Define the caps for tracking buckets. Usage: {"hour": 25, "day": 32, "isoWeek": 12, "month": 96, "year": 1000}                                                                                                                                                                                                                                      |
 | 
			
		||||
| GRIST_SNAPSHOT_KEEP                | optional. Number of recent snapshots to retain unconditionally for a document, regardless of when they were made                                                                                                                                                                                                                                              |
 | 
			
		||||
| GRIST_PROMCLIENT_PORT              | optional. If set, serve the Prometheus metrics on the specified port number. ⚠️ Be sure to use a port which is not publicly exposed ⚠️.                                                                                                                                                                                                                         |
 | 
			
		||||
 | 
			
		||||
#### AI Formula Assistant related variables (all optional):
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user