Grist
Wiki Cafe's configuration for a Grist deployment.
Deploying the app with Docker Swarm
Set the environment variables from the .env file during the shell session.
set -a && source .env && set +a
Set the secrets.
printf "SECRET_HERE" | docker secret create SECRET_NAME -
Deploy using the -c flag to specify one or multiple compose files.
docker stack deploy grist --detach=true -c compose.yaml
Miscellaneous notes
- We may want to set
GRIST_TERMS_OF_SERVICE_URLto a custom URL, such as the Wiki Cafe's terms of service. - Coop Cloud seems to use Pyodide as a sandboxing mechanism. We may want to replace gvisor with Pyodide in the future.
- Not sure what
APP_DOC_URLis, but we use it and it works - As of version 1.1.16 The Docker images now use a non-root user to run Grist.
- As of version 1.1.17 additional security options for OIDC authentication were added, improving security and enabling compatibility with new providers that have specific requirements. These are enabled by default, according to best practices.
- We may want to set a maximum size of document history later as it is now configurable via environment variables as of version 1.2.1.
- There are also
GRIST_SNAPSHOT_TIME_CAPandGRIST_SNAPSHOT_KEEPto look at. - There are also
GRIST_ACTION_HISTORY_MAX_BYTESandGRIST_ACTION_HISTORY_MAX_ROWSto look at. - Currently, Grist stores attachments in the database, we may want to change this in the future to store them in a separate storage service like MinIO (version 1.4.0).
GRIST_EXTERNAL_ATTACHMENTS_MODErelated. - What should
COOKIE_MAX_AGEbe set to? The default is 90 days, but we may want to set it to a shorter time or none. - We should probably set
GRIST_SESSION_SECRET. Not sure. - What does
GRIST_SERVERSdo? It ishome,docs,staticby default, but it can also haveapp? - Should we set
GRIST_ORG_IN_PATH? "if true, encode org in path rather than domain" This is what we do, no? GRIST_LIST_PUBLIC_SITESis an option that we can use. "if set to true, sites shared with the public will be listed for anonymous users. Defaults to false."GRIST_IGNORE_SESSION: if set, Grist will not use a session for authentication? Do we want this?GRIST_DOMAINMaybe needs to be set to the Wiki Cafe's domain?GRIST_DEFAULT_EMAILgives access to/admin.
Description
Languages
Shell
100%