Installation and Administration

Configuration Parameters Index (nuxeo.conf)

Updated: July 17, 2023

Here is a list of available parameters for nuxeo.conf. This list may not be exhaustive but it will be often updated.

Those parameters can be either environment parameters used by Nuxeo runtime or template parameters used for values replacement in configuration files.

Some parameters can be set By contributing to the Configuration Service.

Parameter Default value ("|" separates possible values) Description Since
JAVA_HOME None. If undefined nuxeoctl script will try to discover it. Path to Java home directory.  
JAVA_OPTS -Xms512m -Xmx1024m -XX:MaxPermSize=512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dfile.encoding=UTF-8 Optional values passed to the JVM. Nuxeo requires at least 1024 Mo in JVM heap size and 256Mo as maximum permanent size (512 recommended). Decreasing garbage collector frequency avoid having too much CPU usage (Sun Java specific options, recommended by JBoss).  
launcher.start.max.wait 300 In seconds. Maximum time to wait for effective Nuxeo server start before giving up (applies on commands "start" and "restart").  
launcher.stop.max.wait 60 In seconds. Maximum time to wait for effective Nuxeo server stop cleanly before using forced stop. true Possible values: true or false . If true, will set = ${nuxeo.tmp.dir}.  
nuxeo.log.dir log Log directory (absolute or relative to NUXEO_HOME). Linux recommended path: /var/log/nuxeo/... bin Directory where to store Nuxeo PID file. data Data directory (absolute or relative to NUXEO_HOME). It involves all data not being stored in database. Linux recommended path: /var/lib/nuxeo/...  
nuxeo.tmp.dir server/default/tmp (JBoss) tmp (Tomcat) tmp (Jetty) Location of the temporary files. packages Since Nuxeo 5.9.4. Nuxeo Packages directory. Since Nuxeo 5.9.4
nuxeo.force.generation true | once If "true", will force generation of configuration files; otherwise they are only generated when not existing. If "once", will force one time and switch to false after successful generation. If "false", configuration changes are ignored.  
nuxeo.templates default Comma separated list of templates to include. Templates paths are absolute or relative to $NUXEO_HOME/templates/. Available templates: postgresql, mysql, mssql, oracle, custom, ...  
nuxeo.bind.address Server binding address. "" means "all available network interfaces". WARNING: when changing nuxeo.bind.address, you must accordingly change nuxeo.loopback.url.  
nuxeo.server.http.port 8080 Server HTTP listen port.  
nuxeo.server.ajp.port 8009 Server AJP listen port. This is not available on Jetty.  
nuxeo.server.jvmRoute nuxeo Server AJP route for load-balancing localhost Since Nuxeo 7.3. Tomcat server's "admin" host. This is the address on which the server waits for a shutdown command. Since Nuxeo 7.3
nuxeo.server.tomcat-admin.port 8005 Deprecated since Nuxeo 5.6 and replaced by nuxeo.server.tomcat_admin.port. Tomcat server's "admin" port. This is only useful if you have another Tomcat server running and want to avoid port conflicts. Deprecated since Nuxeo 5.6
nuxeo.server.tomcat_admin.port 8005 Since Nuxeo 5.6. Tomcat server's "admin" port. Replaces nuxeo.server.tomcat-admin.port. This is only useful if you have another Tomcat server running and want to avoid port conflicts. Since Nuxeo 5.6
nuxeo.server.https.port 8443 Server HTTPS listen port. This is only useful if you have modified the application server to use HTTPS.  
nuxeo.server.emptySessionPath false (Tomcat only) Since Nuxeo 5.5, until 5.7.1. If set to true, all paths for session cookies will be set to /. May be useful to enable authentication on proxyfied WebEngine applications (see HTTP and HTTPS Reverse-Proxy Configuration). Removed since Nuxeo 5.7.2 (see Since Nuxeo 5.5, until Nuxeo 5.7.1
nuxeo.server.signature None (Tomcat only) Since Nuxeo 6.0. If set, this will replace the default value of the "Server:" HTTP response header. Nuxeo 5.9.3-SNAPSHOT Server name.  
org.nuxeo.ecm.instance.description Nuxeo Server description. Nuxeo Platform Product name, displayed in the page title on your browser.  
org.nuxeo.ecm.product.version 5.9.3-SNAPSHOT   false Since Nuxeo 5.6, this property uses the "dev" mode when running the Nuxeo application. This parameter should not be set to true on a production server, as it disables some caches, and enables hot redeploy of some JARs (Studio JARs for instance). For more information about the dev mode, see How to do incremental deployment (hot reload) in the JSF-Seam layer. Before 5.6, setting this property to true stopped the runtime when an error occured at deployment. This behaviour has been removed from the dev mode and is now controlled by the property org.nuxeo.runtime.strict. Since Nuxeo 5.6 false Since Nuxeo 5.8, setting this property to "true" will display a quite visible warning message in the Admin tab, stating that this is a production instance. This is useful for administrators who are sometimes confusing their Nuxeo production server with their test server (not to rat anyone out). Since Nuxeo 5.8 false Since Nuxeo 6.0, you can enable this mode if you'd like to display exception stacktraces in JSON response when error occurs after REST calls. See Web Exceptions documentation to get modes description and examples. Since Nuxeo 6.0
org.nuxeo.automation.trace false Enable this mode if you'd like to display automation traces during runtime: You'll benefit from exhaustive logs to debug all automation chain and/or operation execution. The automation trace mode is disabled by default (not suitable for production). It can be activated through JMX via org.nuxeo:TracerFactory MBean during runtime.  
org.nuxeo.automation.trace.printable By default, all automation executions are 'printable' (appear in logs) when automation trace mode is on. You can filter chain and/or operation execution trace printing by setting this property to chain name and/or operation separated by comma. Comment this property to get all automation chains/operations back in printing (by default set to * (star)) server/default/deploy/nuxeo.ear Directory where templateName files will be deployed.  
mailservice.user nobody (JBoss only) User for e-mail authentication.  
mailservice.password password (JBoss only) Password for e-mail authentication. mail.transport.protocol pop3 smtp Server protocol parameters for e-mailing.  
mail.user nobody User who will receive e-mail (unused in Nuxeo). localhost e-Mail server. anonymous password   
mail.debug false Enable debugging output from the JavaMail classes.  
nuxeo.notification.eMailSubjectPrefix [Nuxeo] Subject prefix in Nuxeo notification e-mails.  
nuxeo.notification.eMailSignerThe Nuxeo teamSigner of the sent e-mail. localhost SMTP gateway server.  
mail.transport.port 25 (without authentication) 587 (with authentication) 465 (SSL) e-Mail server port.  
mail.transport.usetls false Use TLS for the SMTP connection.  
mail.transport.auth true   
mail.transport.user anonymous   
mail.transport.password password   
mail.from [email protected] The e-mail address will be sent from. nuxeo | NUXEO Database name.  
nuxeo.db.user sa | nuxeo Database username.  
nuxeo.db.password (empty value) | password Database password. localhost Database host URL.  
nuxeo.db.port 3700 (DB2) 5432 (PostgreSQL) 3306 (MySQL) 1521 (Oracle) 1433 (MSSQL) Database host port.  
nuxeo.db.jdbc.url (database-dependent) Database JDBC connection URL for Nuxeo datasources, for instance jdbc:postgresql://${}:${nuxeo.db.port}/${}.  
nuxeo.db.validationQuery   Database validation query, a SELECT statement used to check connections before using them, usually SELECT 1. Using this has a noticeable speed impact but makes connections resilient to network or sever problems.  
nuxeo.db.min-pool-size 5 Database minimum pool size for Nuxeo datasources.  
nuxeo.db.max-pool-size 20 (JBoss) 100 (Tomcat) Database maximum pool size for Nuxeo datasources.  
nuxeo.db.idle-timeout-minutes0 (no timeout) Since Nuxeo 6.0. Database timeout after which connections not in use are removed from the pool. Since Nuxeo 6.0
nuxeo.db.embeddedDatasources true Embed datasources in nuxeo runtime 
nuxeo.db.xaModefalseEnable XA mode (required if multiple datasources configured) 
nuxeo.vcs.min-pool-size 0 Database minimum pool size for Nuxeo repository (VCS).  
nuxeo.vcs.max-pool-size 20 Database maximum pool size for Nuxeo repository (VCS).  
nuxeo.vcs.blocking-timeout-millis 100 Since Nuxeo 5.8. Database maximum wait time to get a connection from the pool when all connections are in use, for Nuxeo repository (VCS). Since Nuxeo 5.8
nuxeo.vcs.idle-timeout-minutes 10 Since Nuxeo 5.8. Database timeout after which connections not in use are removed from the pool, for Nuxeo repository (VCS). Since Nuxeo 5.8
nuxeo.vcs.fulltext.disabled false Since Nuxeo 5.8. Whether full text indexing and querying should be completely disabled in the repository. See VCS Configuration for details. Since Nuxeo 5.8 false Since Nuxeo 6.0. Full text querying from VCS (database backend) is disabled, full text extraction is done. See VCS Configuration for details. Since Nuxeo 6.0
nuxeo.vcs.fulltext.analyzer.language english Since Nuxeo 7.3. Full text analyzer language. Only applies to postgresql and mssql database types (see nuxeo.db.type). Since Nuxeo 7.3
nuxeo.vcs.noddl false Since Nuxeo 5.8. Where DDL generation should be disabled in the repository. See VCS Configuration for details. Since Nuxeo 5.8
nuxeo.vcs.ddlmode execute Since Nuxeo 7.10-HF01. What kind of DDL generation is done. See VCS Configuration for details. Since Nuxeo 7.10-HF01
nuxeo.vcs.idtype varchar Since Nuxeo 5.8. The type of id column. See VCS Configuration for details. Since Nuxeo 5.8
nuxeo.vcs.copy.findFreeName.disabled false Since Nuxeo 7.3. Set to true to disable free-name detection and let the database raise a constraint error in case of collisions if the constraints have been added by hand. Since Nuxeo 7.3
nuxeo.url http://localhost:8080/nuxeo Application URL (without final slash), should be the public URL of your server (i.e.:  
nuxeo.loopback.url http://localhost:8080/nuxeo Nuxeo URL, for connections from Nuxeo to itself (theme banks default). The port should be the same as nuxeo.server.http.port. If not explicitly configured, the loop back URL is generated from nuxeo.bind.address, nuxeo.server.http.port and org.nuxeo.ecm.contextPath values.  
org.nuxeo.ecm.contextPath /nuxeo Application context path. Before 5.6, you also have to accordingly rename all occurrences of nuxeo.xml (for Tomcat) Note: Changing this parameter is not enough. See How to Change Context Path DEPRECATED. 8100 DEPRECATED. 2.2.1 DEPRECATED. true DEPRECATED.  
jod.connection.protocol SOCKET OpenOffice Connection protocol, either PIPE or SOCKET.  
jod.max.tasks.per.process 200 Maximum task per Office instance before restarting it.  
jod.task.execution.timeout 120000 Will stop the task if it s not completed after timeout.  
jod.task.queue.timeout 30000 Will stop looking for the next task in the queue after timeout.   Home directory of OpenOffice or LibreOffice. 2003 When running in SOCKET mode, comma-separated list of ports used for the office connection.   When running in PIPE mode, comma-separated list of pipe names used for the office connection.  
jod.jpipe.lib.path   Path to Jpipe library. Only used when connecting to OO through PIPE.  
jod.template.profile.dir   Path to custom OO template directory.  
repository.clustering.enabled false Activate clustering mode.   Since Nuxeo 7.3. The cluster node id for this Nuxeo instance, usually a number (see NXP-17180). Since Nuxeo 7.3
repository.clustering.delay 1000 When clustering is activated, defines the delay during which invalidations don't need to be processed (expressed in milliseconds).   Defines the folder where binaries are stored. Useful when using clustering or to change the location of binaries to another location.  
nuxeo.core.binarymanager   Custom class for the Binary Manager, to replace the default file-base storage.  
nuxeo.core.binarymanager_key   Since Nuxeo 6.0. Key configuration for the binary manager, if applicable. Since Nuxeo 6.0
nuxeo.templates.parsing.extensions xml,properties Deprecated since Nuxeo 5.6. Files extensions being parsed for parameters replacement when copying templates. Deprecated since Nuxeo 5.6
nuxeo.plaintext_parsing_extensions xml,properties Since Nuxeo 5.6. Files extensions being parsed for parameters replacement when copying templates. Since Nuxeo 5.6
org.nuxeo.ecm.jboss.configuration default JBoss configuration to use (default, minimal, all, ...) Pay attention to the fact that this won't apply to templates defining their own value (for instance, "default" template sets without being aware of org.nuxeo.ecm.jboss.configuration value).  
zip.entry.encoding   Choose how to encode filename when exporting documents to zip in the worklist. Since Nuxeo 7.1, the ZIP entries names are encoded in UTF8  by default. If you want to get the old behavior back (having entry name encoded in ascii), use zip.entry.encoding=ascii. Modified since Nuxeo 7.1
org.nuxeo.ecm.platform.liveedit.autoversioning none,minor,major see Configuration Examples  
nuxeo.wizard.done true or false depending on the package If set to false, will start a setup wizard before starting Nuxeo.   HTTP proxy host.  
nuxeo.http.proxy.port   HTTP proxy port.  
nuxeo.http.proxy.login   HTTP proxy login.  
nuxeo.http.proxy.password   HTTP proxy password.   NT Lan Manager (NTLM) Proxy. Host name of the Windows machine running the Nuxeo server.  
nuxeo.http.proxy.ntlm.domain   NT Lan Manager (NTLM) Proxy. Domain name to authenticate against.  
nuxeo.http.proxy.pac.url   Since Nuxeo 5.9.3. Proxy auto-config (PAC) file URL. Since Nuxeo 5.9.3
facelets.REFRESH_PERIOD -1 Indicates to the compiler the number of seconds to wait between subsequent checks for changes in modified JSF facelets in a running application. Useful for facelet debugging. To disable this compiler check use a value of -1 which is a recommended value for production deployments as compiler checks have an impact on application performance. Since Nuxeo 5.6, the parameter undefined should be used instead as it forces this parameter to value "2".  
nuxeo.db.transactiontimeout 300 Database transaction timeout in seconds (available for Tomcat server only)  
server.status.key   Secure key for connecting to server status monitoring servlet. It is randomly generated if not set. It is also used by default for sensitive configuration data encryption, see server.crypt.secretkey.  
session.timeout 60 Session timeout (see web.xml session-timeout).  
session.config.tracking.mode.cookie false Session tracking mode.
If true, prevents Tomcat from appending the jsessionid parameter to the URLs, for example a file download URL. Yet, cookies need to be enabled in the browser.
Otherwise, the jsessionid parameter might be appended to some URLs, for instance when sharing a document permalink to an anonymous user or when clearing the browser's cookies. Yet, cookies don't need to be enabled in the browser.
Since Nuxeo 7.10-HF43
nuxeo.updatecenter.disabled false (unset) Disables the Update Center feature.  
org.nuxeo.big.file.size.limit 5Mi (unset) Redirects onto the big file download URL if size exceeds limit.  
org.nuxeo.ecm.platform.ui.web.auth .NuxeoAuthenticationFilter.isLoginNotSynchronized false (unset) Disables login synchronization.  
nuxeo.wizard.packages.url   Defines the base URL used by the Setup Wizard to get the packages.xml file describing the available software packages options.  
nuxeo.wizard.skippedpages null Comma separated list of pages that should be skipped inside the wizard.  
nuxeo.jsf.numberOfConversationsInSession 4 Since Nuxeo 5.7.2, Parameter to control the number of conversation states that are saved in session. Each conversation holds a number of view states that is defined by nuxeo.jsf.numberOfViewsInSession Since Nuxeo 5.7.2
nuxeo.jsf.numberOfViewsInSession 4 Since Nuxeo 5.7.2 (5.6-HF20) Parameter to control the JSF init parameter com.sun.faces.numberOfViewsInSessionSince Nuxeo 5.7.2
nuxeo.jsf.numberOfLogicalViews 4 Since Nuxeo 5.7.2 (5.6-HF20) Parameter to control the JSF init parameter com.sun.faces.numberOfLogicalViews Since Nuxeo 5.7.2
nuxeo.jsf.tmp.dir nuxeo.tmp.dir (unset) Since Nuxeo 6.0. Faces Servlet multi-part config: an absolute path to a directory on the file system. The location attribute does not support a path relative to the application context. This location is used to store files temporarily while the parts are processed or when the size of the file exceeds the specified fileSizeThreshold setting. The default location is "". Since Nuxeo 6.0<
nuxeo.jsf.maxFileSize -1 (unlimited) (unset) Since Nuxeo 6.0. Faces Servlet multi-part config: the maximum size allowed for uploaded files, in bytes. The default size is unlimited. Since Nuxeo 6.0
nuxeo.jsf.maxRequestSize -1 (unlimited) (unset) Since Nuxeo 6.0. Faces Servlet multi-part config: the maximum size allowed for a multipart/form-data request, in bytes. The default size is unlimited. Since Nuxeo 6.0
nuxeo.jsf.fileSizeThreshold 0 (unset) Since Nuxeo 6.0. Faces Servlet multi-part config: The file size in bytes after which the file will be temporarily stored on disk. The default size is 0 bytes. Since Nuxeo 6.0
nuxeo.vcs.use-nulls-last-on-desc true (unset) Since Nuxeo 5.8. Ask the database to use "NULLS LAST" when sorting DESC. True by default to get the same result order between different databases. Also turning this option to false enable PostgreSQL and Oracle to use an index on the sorted column which can be huge performance improvement.   Since Nuxeo 5.8
org.nuxeo.connect.connector.cache.duration 60min (5min for Studio packages) Since Nuxeo 5.6. Nuxeo Packages list cache (in minutes). Since Nuxeo 5.6
org.nuxeo.connect.server.reachable true Since Nuxeo 5.7. Launcher online/offline mode for connections to Nuxeo Connect. Since Nuxeo 5.7
org.nuxeo.connect.url Nuxeo Connect URL. false Enable/Disable multi-line strings escaped with a trailing \ when using Document.Update or Workflow.SetWorkflowVariables Automation operations.  
org.nuxeo.cmis.joins false Since Nuxeo 6.0. When true, CMISQL JOINs are allowed if VCS is used. Incompatible with org.nuxeo.cmis.proxies=true. Since Nuxeo 6.0
org.nuxeo.cmis.proxies false Since Nuxeo 7.10-HF08 / Nuxeo 8.3. When true, CMIS can see proxies. Incompatible with org.nuxeo.cmis.joins=true. Since Nuxeo 7.10-HF08
org.nuxeo.cmis.enableComplexProperties false Since Nuxeo 7.1. When true, complex properties are exposed as JSON-encoded strings. Since Nuxeo 7.1 false Since Nuxeo 6.0. When true, enables adding negative ACL (deny permissions) in the UI, otherwise only grant permissions are available. Since Nuxeo 6.0
audit.elasticsearch.enabled false | true Since Nuxeo 7.3. See Disabling Elasticsearch for Audit Logs Defaults to false on server upgrade, true on new install. Since Nuxeo 7.3
audit.elasticsearch.indexName ${elasticsearch.indexName}-audit Name of the Elasticsearch index for audit logs. Since Nuxeo 7.10
seqgen.elasticsearch.indexName ${elasticsearch.indexName}-uidgen Name of the Elasticsearch index for the uid sequencer. Since Nuxeo 7.10
audit.elasticsearch.migration false Since Nuxeo 7.3. See Triggering SQL to Elasticsearch Audit Logs MigrationSince Nuxeo 7.3
audit.elasticsearch.migration.batchSize 1000 Since Nuxeo 7.3. See Triggering SQL to Elasticsearch Audit Logs Migration Since Nuxeo 7.3
org.nuxeo.cmis.elasticsearch false Since Nuxeo 7.2. To send the CMISQL queries to Elasticsearch, set to true. Since Nuxeo 7.2</td

false Set to true to activate Redis. Since Nuxeo 5.8 redishost  Since Nuxeo 5.8
nuxeo.redis.port 6379   Since Nuxeo 5.8
nuxeo.redis.password     Since Nuxeo 5.8
nuxeo.redis.database 0   Since Nuxeo 5.8
nuxeo.redis.timeout 2000   Since Nuxeo 5.8
nuxeo.redis.maxTotal 16 The maximum size of the Redis connections pool. Since Nuxeo 7.10-HF05
nuxeo.redis.maxIdle 8 The maximum number of Redis idle connections in the pool. Since Nuxeo 7.10-HF05
nuxeo.redis.prefix nuxeo: This allows you to use a single Redis server between several Nuxeo cluster installations by having a different prefix for each cluster. See the page Redis Configuration for more details. Since Nuxeo 5.8
server.crypt.secretkey ${server.status.key} Custom secret key used for sensitive configuration data encryption. It takes either a raw value or an URL (e.g. file:///path/to/secretkey or Since Nuxeo 7.4
server.crypt.keystore.path ${} Path to the keystore to use for sensitive configuration data encryption. Since Nuxeo 7.4
server.crypt.keystore.pass ${"changeit"} The password used to protect the integrity of the keystore contents. Since Nuxeo 7.4
server.crypt.keyalias   The alias prefix where to retrieve the secret key from the keystore. It is automatically suffixed with the algorithm ("AES" or "DES"). Since Nuxeo 7.4  

This parameter can be used to replace the nuxeo-virtual-host request header (usually when using HTTPS) when it is not possible to set it at the reverse-proxy level. The use of the header is still preferred as the parameter forces your Nuxeo instance to be accessible from one URL only.


Since Nuxeo 7.4
elasticsearch.enabledtrueSwitch to enable/disable Elasticsearch usage

Since 6.0

elasticsearch.indexName nuxeo Name of the Elasticsearch index for the default document repository  
elasticsearch.addressList   Comma separated list of Elasticsearch nodes, if empty use a local in JVM node (not for production)  
elasticsearch.clusterName nuxeoCluster Name of the Elasticsearch cluster to join  
elasticsearch.indexNumberOfReplicas 1 Number of replicas (not for local node)  
elasticsearch.indexNumberOfShards 5 Number of shards (not for local node)  
elasticsearch.nodeName nuxeoNode Name of the local node  
elasticsearch.httpEnabled false Does the local node accept HTTP request on port 9200  
elasticsearch.override.pageproviders default_search,DEFAULT_DOCUMENT_SUGGESTION Comma separated list of CorePageProvider names to supersede by Elasticsearch  
elasticsearch.reindex.bucketReadSize 500 Reindexing option, number of documents to process per worker  
elasticsearch.reindex.bucketWriteSize 50 Reindexing option, number of documents to submit to Elasticsearch per bulk command  
elasticsearch.indexing.maxThreads 4 Maximum size of the indexing thread pool  
elasticsearch.indexing.clearCompletedAfterSeconds 90 Time to keep the completed indexing worker states  
elasticsearch.adminCenter.displayClusterInfo false Display Elasticsearch cluster and nodes information in the admin center @since 6.0-HF06, always true for embedded mode  
elasticsearch.reindex.onStartup false Reindex the repository content on startup if the index is empty  
elasticsearch.httpReadOnly.baseUrl http://localhost:9200/ Required when using a standalone Elasticsearch instance. See Elasticsearch Passthrough. Since Nuxeo 7.10 default Type of directory, used for LDAP or multi-directory configuration. Possible values are default, ldap, multi.Since 6.0
nuxeo.user.anonymous.enable When LDAP is enabled and this parameter is set to true, allows anonymous login with Guest user false Since 6.0
nuxeo.user.emergency.enable When LDAP is enabled and this parameter is set to true, declares an emergency user to connect to Nuxeo in case of LDAP issues false Since 6.0
nuxeo.user.emergency.username The username of emergency user when nuxeo.user.emergency.enable is set to true MyAdministrator Since 6.0
nuxeo.user.emergency.password The password of emergency user when nuxeo.user.emergency.enable is set to true secret Since 6.0
nuxeo.user.emergency.firstname The firstname of emergency user when nuxeo.user.emergency.enable is set to true   Since 6.0
nuxeo.user.emergency.lastname The lastname of emergency user when nuxeo.user.emergency.enable is set to true   Since 6.0