Operations
This chapter describes the configuration of the CMS server. In NeuroomNet installations, the installation takes care of this; the values are stored there in etcd.
Configuration
At startup, the server reads:
config.jsonin the server directory,config.custom.jsonnext to it (overrides individual keys),- etcd, if the environment variables
ETCD_HOSTandETCD_REALMare set. All keys under<ETCD_REALM>[.<ETCD_NAMESPACE>].cms.are read; dots in the key result in nested objects, values are JSON. Example:neuroomnet.nn.cms.httpPort→29912.
| Key | Meaning |
|---|---|
dbUri | MongoDB connection including database name, e.g. mongodb://localhost:27017/cms |
dbConfig | additional options for the MongoDB driver |
httpPort | port of the web server, default in config.json: 29912 |
httpAuth | authentication method: ./auth/basic or ./auth/oidc (see Authentication) |
webAdmin, webAdminPass | name and password of the administrator account |
ignoreAccountCase | case-insensitive account names (prevents accounts that differ only in case) |
diskUpload | buffer uploaded files on disk instead of in memory before they are taken over |
oidc | settings for OIDC, see Authentication |
headerSSO | settings for header SSO, see Authentication |
previewAdmin, previewAdminPass, previewDatabase | access and storage of the built-in preview server |
Media files are stored in MongoDB (GridFS). A backup of the database therefore also includes the files.
Encryption
If the files ssl.crt and ssl.key with content are present in the server directory, the server starts with HTTPS, otherwise with HTTP. In NeuroomNet installations, the CMS runs behind nginx, which handles encryption (port 444).
Extensions
At startup, the CMS can load extensions (plugins) that add their own endpoints and actions. /version and /plugins report which ones are loaded. The plugin interface is not described here.