Configuration Options
RavenDB is Safe by Default which means its set of options is configured for the best safety.
However, these options can be manually configured in order to accommodate different server behavior.
Environment Variables
Configuration can be adjusted using environment variables. Server is going to pick up all environment variables preceded by RAVEN_
prefix and apply their values to specified configuration keys. All period .
characters in configuration keys should be replaced with an underscore character (_
) when used in environment variables.
Example
RAVEN_Setup_Mode=None
RAVEN_DataDir=RavenData
RAVEN_Certificate_Path=/config/raven-server.certificate.pfx
JSON
The settings.json
file which can be found in the same directory as the server executable can also be used to change the configuration of the server.
The file is read and applied on the server startup only. It is created when running the server for the first time from the settings.default.json
file.
Example
{
"ServerUrl": "http://127.0.0.1:8080",
"Setup.Mode": "None"
}
Note
Changes in settings.json
override the environment variables settings.
JSON Arrays
All configuration options that support multiple values (for example strings separated by ;
) can be configured via regular JSON array e.g. Security.WellKnownCertificates.Admin
{
"ServerUrl": "http://127.0.0.1:8080",
"Setup.Mode": "None",
"Security.WellKnownCertificates.Admin" : [ "297430d6d2ce259772e4eccf97863a4dfe6b048c", "e6a3b45b062d509b3382282d196efe97d5956ccb" ]
}
Command Line Arguments
The server can be configured using command line arguments that can be passed to the console application (or while running as a deamon).
Example:
./Raven.Server --Setup.Mode=None
Note
These command line arguments override the settings of environment variables and the settings.json
. More details about Command Line Arguments can be found here.