> ## 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.

# 4. Personalizing your instance

> Put your settings into the ConfigMap that replaces config/variables.env.

The ConfigMap `overleaf-env` takes the place of the Toolkit's `config/variables.env`: every environment variable from the [Toolkit documentation](https://ayakaleaf-pro.mintlify.site/on-premises/configuration/overleaf-toolkit/environment-variables.md) goes here, and secrets go into the Secret from [step 2](https://ayakaleaf-pro.mintlify.site/on-premises/installation/using-kubernetes/2.-create-the-namespace-and-secrets.md).

```yaml title="30-config.yaml" wrap theme={null}
apiVersion: v1
kind: ConfigMap
metadata:
  name: overleaf-env
  namespace: overleaf
data:
  OVERLEAF_APP_NAME: Ayakaleaf Pro
  OVERLEAF_SITE_URL: http://192.0.2.10:30080      # the address users open; https://... behind TLS
  OVERLEAF_ADMIN_EMAIL: admin@example.com
  # Emails: add the sender and the SMTP server together, see Email delivery
  # All members, so that the driver finds the primary even when mongo-0 is down
  OVERLEAF_MONGO_URL: mongodb://mongo-0.mongo:27017,mongo-1.mongo:27017,mongo-2.mongo:27017/sharelatex?replicaSet=overleaf
  OVERLEAF_REDIS_HOST: redis
  REDIS_HOST: redis
  ENABLED_LINKED_FILE_TYPES: project_file,project_output_file,url
  ENABLE_CONVERSIONS: "true"
  EMAIL_CONFIRMATION_DISABLED: "true"
  # Requests arrive from kube-proxy or your ingress controller, inside the pod network
  OVERLEAF_TRUSTED_PROXY_IPS: loopback,10.244.0.0/16
  # Sandboxed compiles. The HOST_DIR paths are paths ON THE NODE: the hostPath volumes that
  # the Deployment mounts at /var/lib/overleaf/data/{compiles,output,cache}.
  SANDBOXED_COMPILES: "true"
  SANDBOXED_COMPILES_SIBLING_CONTAINERS: "true"
  DOCKER_RUNNER: "true"
  SANDBOXED_COMPILES_HOST_DIR_COMPILES: /srv/overleaf/compiles
  SANDBOXED_COMPILES_HOST_DIR_OUTPUT: /srv/overleaf/output
  SANDBOXED_COMPILES_HOST_DIR_CACHE: /srv/overleaf/cache
  # Each image must be pulled into Docker on every node that can run Ayakaleaf Pro (step 0)
  ALL_TEX_LIVE_DOCKER_IMAGES: ghcr.io/ayaka-notes/texlive-full:2026.1
  ALL_TEX_LIVE_DOCKER_IMAGE_NAMES: TeX Live 2026
  TEX_LIVE_DOCKER_IMAGE: ghcr.io/ayaka-notes/texlive-full:2026.1
```

```bash theme={null}
kubectl apply -f 30-config.yaml
```

| Variable | Set it to |
| - | - |
| `OVERLEAF_SITE_URL` | The URL users type in the browser. With the NodePort from [step 5](https://ayakaleaf-pro.mintlify.site/on-premises/installation/using-kubernetes/5.-deploy-ayakaleaf-pro.md), any node's IP and port `30080`; behind an ingress or load balancer, its URL. |
| `OVERLEAF_MONGO_URL` | Your replica set. Use `?replicaSet=` with the name from `rs.initiate`. |
| `OVERLEAF_REDIS_HOST` and `REDIS_HOST` | Both, to the Redis Service. |
| `OVERLEAF_TRUSTED_PROXY_IPS` | `loopback` plus the networks your proxies connect from. `10.244.0.0/16` is flannel's pod network; use your cluster's pod CIDR. |
| `SANDBOXED_COMPILES_HOST_DIR_*` | The node paths of the compile volumes. They must match the `hostPath` volumes in [step 5](https://ayakaleaf-pro.mintlify.site/on-premises/installation/using-kubernetes/5.-deploy-ayakaleaf-pro.md). |

Behind HTTPS, also set `OVERLEAF_SECURE_COOKIE: "true"`, see [TLS proxy](https://ayakaleaf-pro.mintlify.site/on-premises/configuration/overleaf-toolkit/tls-proxy.md).

> [!NOTE]
>
> A changed ConfigMap only reaches running pods after a restart: `kubectl -n overleaf rollout restart deployment/overleaf`.


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