MeilisearchInstance
Scope: namespaced · Backend: official Meilisearch Helm chart (type: meilisearch)
The Meilisearch search backend for LibreChat. There is no upstream Meilisearch operator, so this resource is operator-native: managed mode drives the official Meilisearch Helm chart directly as an operator-owned workload release named after the resource.
One instance per consumer
Meilisearch partitions data by index, not by database, so sharing one instance across consumers risks index-name collisions. Prefer one MeilisearchInstance per consumer unless your indexes are namespaced.
Spec
| Field | Type | Description |
|---|---|---|
type | enum meilisearch (default) | Official Helm chart |
mode | enum managed | adopt | external (required) | Provenance mode |
managed | object | Settings when mode: managed |
adopt | object | Reference an existing in-cluster Meilisearch Service |
external | object | External / SaaS host + master key |
managed
| Field | Description |
|---|---|
storageSize | PVC size |
storageClass | StorageClass |
resources | CPU/memory |
masterKeySecretName | Override the generated master-key Secret (key MEILI_MASTER_KEY) |
rotation | Rotate the master key (licensed) |
adopt / external
| Field | Description |
|---|---|
adopt.serviceRef | An existing in-cluster Meilisearch Service; namespace is optional and may point at another namespace — the host is built from it |
adopt.port | HTTP port (default 7700) |
adopt.masterKeySecretRef | Master-key Secret (key MEILI_MASTER_KEY). namespace defaults to the Service's namespace; a Secret outside this CR's namespace is mirrored here as <name>-adopted-credentials, which is what status.masterKeySecret names |
external.host | External base URL |
external.masterKeySecretRef | Master-key Secret |
Behavior by mode
managed— generates a master-key Secret (MEILI_MASTER_KEY), installs themeilisearchchart as an operator-owned release named after the resource, and waits for the workload to be ready.adopt— references an existing Service plus its master-key Secret; lifecycle is not managed.external— points at an external/SaaS host plus a master-key Secret.
Example — managed
yaml
apiVersion: core.navique.com/v1alpha1
kind: MeilisearchInstance
metadata:
name: forge-ui-search
namespace: forge-ui
spec:
type: meilisearch
mode: managed
managed: { storageSize: 5Gi }Status
{ phase, host (full URL, e.g. http://NAME.NS.svc.cluster.local:7700), masterKeySecret, conditions, observedGeneration }. Short name meili.