> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Toolkit settings

This page describes the environment variables that are supported in the `config/overleaf.rc` file for Toolkit deployments.

The `config/overleaf.rc` file consists of variable definitions in the form `NAME=value`. Lines beginning with `#` are treated as comments.

<Info>
  It is necessary that you re-create the Docker containers after changing anything in `overleaf.rc` or `variables.env` by running `bin/up`.
</Info>

## Container

### `sharelatex`

| Name | Description |
| - | - |
| `PROJECT_NAME` | <p>Sets the value of the `--project-name` flag supplied to `docker-compose`. This is useful when running multiple instances of Overleaf on one host, as each instance can have a different project name.<br /><br />- <strong>Default</strong>: `overleaf`</p> |
| `OVERLEAF_IMAGE_NAME` | <p>Docker image as used by the Server Pro/CE application container. This is just the Docker image name; the Docker image tag is sourced from `config/version`.<br /><br />- <strong>Default:</strong><br />- Server Pro: `ghcr.io/ayaka-notes/overleaf-pro`<br />- Community Edition: `sharelatex/sharelatex`</p> |
| `SERVER_PRO` | <p>When set to `true`, tells the Toolkit to use the Server Pro image (`ghcr.io/ayaka-notes/overleaf-pro`), rather than the default Server CE image (`sharelatex/sharelatex`).<br /><br />- <strong>Default</strong>: `false`</p> |
| `GIT_BRIDGE_ENABLED` | <p>Set to `true` to enable the git-bridge feature (Server Pro only). For more information see the <a href="https://www.overleaf.com/learn/how-to/Git_integration">[https://www.overleaf.com/learn/how-to/Git\_integration](https://www.overleaf.com/learn/how-to/Git_integration)</a> user documentation.<br /><br />- <strong>Default:</strong> `false`</p> |
| `GIT_BRIDGE_IMAGE` | <p>Docker image as used by the git-bridge container (Server Pro only). This is just the Docker image name; the Docker image tag is sourced from `config/version`.<br /><br />- <strong>Default:</strong> `ghcr.io/ayaka-notes/overleaf-pro/git-bridge`</p> |
| `GIT_BRIDGE_DATA_PATH` | Sets the path to the directory that will be mounted into the `git-bridge` container (Server Pro only), and used to store the git-repositories. This can be either a full path (beginning with a `/`), or relative to the base directory of the Toolkit. |
| `GIT_BRIDGE_LOG_LEVEL` | <p>Configure the logging level of the `git-bridge` container. Available levels: `TRACE`, `DEBUG`, `INFO`, `WARN`, `ERROR`.<br /><br />- <strong>Default:</strong> `INFO`</p> |
| `SIBLING_CONTAINERS_ENABLED` | <p>When set to `true`, tells the Toolkit to use the <strong>Sibling Containers</strong> technique for compiling projects in separate sandboxes, using a separate Docker container for each project. See the \<server-pro-only-configuration/sandboxed-compiles> documentation for more information.<br /><br />- <strong>Requires:</strong> `SERVER_PRO=true`<br />- <strong>Default:</strong> `true`</p> |
| `SIBLING_CONTAINERS_PULL` | <p>When set to `true`, tells the Toolkit to automatically pull all TeX Live images set using `ALL_TEX_LIVE_DOCKER_IMAGES` in the <strong>config/variables.env</strong> file when using the `bin/up` command.<br /><br />- <strong>Default:</strong> `true`</p> |
| `DOCKER_SOCKET_PATH` | <p>Sets the path to the Docker socket on the host machine (the machine running the Toolkit). When `SIBLING_CONTAINERS_ENABLED` is `true`, the socket will be mounted into the container to allow the compiler service to spawn new Docker containers on the host.<br /><br />- <strong>Requires:</strong> `SIBLING_CONTAINERS_ENABLED=true`<br />- <strong>Default:</strong> `/var/run/docker.sock`</p> |
| `OVERLEAF_DATA_PATH` | <p>Sets the path to the directory that will be mounted into the main `sharelatex` container, and used to store compile data. This can be either a full path (beginning with a `/`), or relative to the base directory of the Toolkit.<br /><br />- <strong>Default:</strong> `data/overleaf`</p> |
| `OVERLEAF_LISTEN_IP` | <p>Sets the host IP address(es) that the container will bind to. For example, if this is set to `0.0.0.0`, then the web interface will be available on any host IP address. For direct container access the value of `OVERLEAF_LISTEN_IP` must be set to your public IP address. Setting `OVERLEAF_LISTEN_IP` to either `0.0.0.0` or the external IP of your host will typically cause errors when used in conjunction with the .<br /><br />- <strong>Default:</strong> `127.0.0.1`</p> |
| `OVERLEAF_PORT` | <p>Sets the host port that the container will bind to. For example, if this is set to `8099` and `OVERLEAF_LISTEN_IP` is set to `127.0.0.1`, then the web interface will be available on `http://localhost:8099`.<br /><br />- <strong>Default:</strong> `80`</p> |
| `OVERLEAF_LOG_PATH` | <p>Sets the path to the directory that will be mounted into the main `sharelatex` container, and used for making application logs available on the Docker host. This can be either a full path (beginning with a `/`), or relative to the base directory of the Toolkit. Remove the config entry to disable the bind-mount. When not set, logs will be discarded when recreating the container.<br /><br />See for information on logging.<br /><br />- <strong>Default:</strong> not set</p> |

***

### `mongo`

| Name | Description |
| - | - |
| `MONGO_ENABLED` | <p>When set to `true`, tells the Toolkit to create a MongoDB container to host the database. When set to `false`, this container will not be created, and the system will use the MongoDB database specified by `MONGO_URL` instead.<br /><br />- <strong>Default</strong>: `true`</p> |
| `MONGO_URL` | <p>Specifies the MongoDB connection URL to use when `MONGO_ENABLED` is `false`.<br /><br />- <strong>Default</strong>: not set</p> |
| `MONGO_DATA_PATH` | <p>Sets the path to the directory that will be mounted into the `mongo` container, and used to store the MongoDB database. This can be either a full path (beginning with a `/`), or relative to the base directory of the toolkit. This option only affects the local `mongo` container that is created when `MONGO_ENABLED` is `true`.<br /><br />- <strong>Default</strong>: `data/mongo`</p> |
| `MONGO_IMAGE` | <p>Docker image as used by the MongoDB container. This is just the name of the Docker image; the Docker image tag should go into `MONGO_VERSION` (see below).<br /><br />- <strong>Default:</strong> `mongo`</p> |
| `MONGO_VERSION` | <p>MongoDB version as used by the MongoDB container. The value must start with the major MongoDB version and a dot, e.g. `6.0` or `6.0-with-suffix`.<br /><br />- <strong>Default:</strong> `6.0`</p> |

***

### `redis`

| Name | Description |
| - | - |
| `REDIS_ENABLED` | <p>When set to `true`, tells the Toolkit to create a Redis container to host the redis database. When set to `false`, this container will not be created, and the system will use the Redis database specified by `REDIS_HOST` and `REDIS_PORT` instead.<br /><br />- <strong>Default</strong>: `true`</p> |
| `REDIS_HOST` | <p>Specifies the Redis host to use when `REDIS_ENABLED` is `false`.<br /><br />- <strong>Default</strong>: not set</p> |
| `REDIS_PORT` | <p>Specifies the Redis port to use when `REDIS_ENABLED` is `false`.<br /><br />- <strong>Default</strong>: not set</p> |
| `REDIS_DATA_PATH` | <p>Sets the path to the directory that will be mounted into the `redis` container, and used to store the Redis database. This can be either a full path (beginning with a `/`), or relative to the base directory of the Toolkit. This option only affects the local `redis` container that is created when `REDIS_ENABLED` is `true`.<br /><br />- <strong>Default</strong>: `data/redis`</p> |
| `REDIS_AOF_PERSISTENCE` | <p>Turn on AOF (Append Only File) persistence for Redis. This is the <strong>recommended</strong> configuration for Redis persistence.<br /><br />For additional details, see the \<../../../maintenance/data-and-backups#aof-append-only-file> section in \<../../maintenance/data-and-backups>.<br /><br />- <strong>Default:</strong> `true`</p> |

***

### `nginx`

| Name | Description |
| - | - |
| `NGINX_ENABLED` | <p>When set to `true`, tells the Toolkit to create an NGINX container to act as a TLS Proxy.<br /><br />- <strong>Default</strong>: `false`</p> |
| `NGINX_CONFIG_PATH` | <p>Path to the NGINX config file to use for the TLS Proxy.<br /><br />- <strong>Default</strong>: `config/nginx/nginx.conf`</p> |
| `NGINX_TLS_LISTEN_IP` | <p>Sets the host IP address(es) that the TLS Proxy container will bind to for HTTPS. For example, if this is set to `0.0.0.0` then the HTTPS web interface will be available on any host IP address. Typically this should be set to the external IP of your host.<br /><br />- <strong>Default</strong>: `127.0.1.1`</p> |
| `NGINX_HTTP_LISTEN_IP` | <p>Sets the host IP address(es) that the TLS Proxy container will bind to for HTTP redirect. For example, if this is set to `127.0.1.1` then HTTP connections to `127.0.1.1` will be redirected to the HTTPS web interface. Typically this should be set to the external IP of your host. Do not set it to `0.0.0.0` as this will typically cause a conflict with `OVERLEAF_LISTEN_IP`.<br /><br />- <strong>Default</strong>: `127.0.1.1`</p> |
| `NGINX_HTTP_PORT` | <p>Sets the host port that the TLS Proxy container will bind to for HTTP.<br /><br />- <strong>Default</strong>: `80`</p> |
| `TLS_PORT` | <p>Sets the host port that the TLS Proxy container will bind to for HTTPS.<br /><br />- <strong>Default</strong>: `443`</p> |
| `TLS_PRIVATE_KEY_PATH` | <p>Path to the private key to use for the TLS Proxy.<br /><br />- <strong>Default</strong>: `config/nginx/certs/overleaf_key.pem`</p> |
| `TLS_CERTIFICATE_PATH` | <p>Path to the public certificate to use for the TLS Proxy.<br /><br />- <strong>Default</strong>: `config/nginx/certs/overleaf_certificate.pem`</p> |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.