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

# E-mailbezorging

> Verstuur activerings-, uitnodigings- en wachtwoordherstelmails vanuit een Kubernetes-implementatie.

De **web**-service verstuurt elke e-mail (activering, projectuitnodigingen, wachtwoordherstel) vanuit elke Ayakaleaf Pro-pod. De instellingen zijn hetzelfde als bij de Toolkit, zie [E-mailbezorging](https://ayakaleaf-pro.mintlify.site/nl/on-premises/configuration/overleaf-toolkit/email-delivery.md).

| | |
| - | - |
| Service | web, in elke Ayakaleaf Pro-pod; gelezen wanneer web start |
| Pod → buiten | je SMTP-server (`OVERLEAF_EMAIL_SMTP_HOST`), of de Amazon SES API van `OVERLEAF_EMAIL_AWS_SES_REGION` |
| Status | de verzendlimiet in Redis |
| Periodieke taken | geen |

### Configuratie

**1. ConfigMap**

```yaml title="30-config.yaml (additions)" wrap theme={null}
  OVERLEAF_EMAIL_FROM_ADDRESS: no-reply@example.com
  OVERLEAF_EMAIL_SMTP_HOST: smtp.example.com
  OVERLEAF_EMAIL_SMTP_PORT: "587"
  OVERLEAF_EMAIL_SMTP_SECURE: "false"
  OVERLEAF_EMAIL_SMTP_USER: no-reply@example.com
  # optional
  # OVERLEAF_EMAIL_REPLY_TO: support@example.com
  # OVERLEAF_EMAIL_SMTP_IGNORE_TLS: "false"
  # OVERLEAF_EMAIL_SMTP_TLS_REJECT_UNAUTH: "true"
```

`OVERLEAF_EMAIL_FROM_ADDRESS` schakelt het verzenden in. Stel deze alleen in samen met de SMTP-server (of SES): met alleen de afzender probeert Ayakaleaf Pro een SMTP-server binnen de pod, en mislukt elke e-mail. Zonder deze instelling worden e-mails niet verzonden, maar alleen naar `web.log` geschreven.

`OVERLEAF_EMAIL_SMTP_SECURE`, `OVERLEAF_EMAIL_SMTP_IGNORE_TLS` en `OVERLEAF_EMAIL_SMTP_TLS_REJECT_UNAUTH` worden als JSON gelezen, dus gebruik `"true"` of `"false"`: een waarde zoals `yes` stopt bij het opstarten elke service van de pod.

**2. Secret**

```bash theme={null}
kubectl -n overleaf patch secret overleaf-secrets --type merge \
  -p '{"stringData":{"OVERLEAF_EMAIL_SMTP_PASS":"<SMTP password>"}}'
```

Zet voor de Amazon SES API in plaats daarvan `OVERLEAF_EMAIL_AWS_SES_ACCESS_KEY_ID` en `OVERLEAF_EMAIL_AWS_SES_SECRET_KEY` hier, en `OVERLEAF_EMAIL_DRIVER: ses` en `OVERLEAF_EMAIL_AWS_SES_REGION` in de ConfigMap.

**3. Toepassen, herstarten en testen**

```bash theme={null}
kubectl apply -f 30-config.yaml
kubectl -n overleaf rollout restart deployment/overleaf     # or statefulset/overleaf
```

Stuur jezelf vanaf de inlogpagina een wachtwoordherstelmail. Als die niet aankomt, controleer dan of de SMTP-server vanuit de pods bereikbaar is en bekijk het web-log:

```bash theme={null}
kubectl -n overleaf exec deploy/overleaf -- bash -c 'echo > /dev/tcp/smtp.example.com/587 && echo reachable'
kubectl -n overleaf exec deploy/overleaf -- grep -iE "email|smtp" /var/log/overleaf/web.log | tail
```

### Meerdere replica's

Niets extra's. Elke replica verstuurt met dezelfde instellingen, en de verzendlimiet wordt in Redis over alle replica's heen geteld. Als je SMTP-server alleen bekende afzenders accepteert, sta dan de adressen toe waarmee de pods het cluster verlaten (meestal die van de nodes).

### Getest op Kubernetes

Met Mailpit als SMTP-server, op Kubernetes 1.37 met één replica, slagen onze end-to-endtests die e-mail versturen: de activeringsmail van een account dat een beheerder aanmaakt, de activeringsmail van een zelfregistratie die tot domeinen is beperkt, de wachtwoordherstelmail, de e-mail die een gebruiker laat weten dat zijn account is verwijderd, en wat er gebeurt wanneer de SMTP-server een activerings- of verwijderingsmail weigert: het account wordt toch aangemaakt of verwijderd, en de activeringsmail kan later opnieuw worden verstuurd. Met `OVERLEAF_EMAIL_FROM_ADDRESS` en zonder SMTP-host mislukte een verzoek tot wachtwoordherstel met een fout en toonde `web.log` "error sending message", zoals hierboven beschreven.


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