Databases and search, checked 2026-10-17
Meilisearch: Docker configuration reference
Self-hosted search engine with typo tolerance, faceting and sub-50ms response times over your own documents.
At a glance
- Image:
getmeili/meilisearch - Tags:
latest,v1.55.0,v1.55,v1.54.3,v1 - Licence: MIT, with enterprise-only features under the Business Source License 1.1
- Source: https://github.com/meilisearch/meilisearch
- Docs: https://www.meilisearch.com/docs
Ports
| Port | What listens | Source |
|---|---|---|
7700 | HTTP listener for the API and the search preview UI. Configurable via MEILI_HTTP_ADDR. | source for port 7700 |
Environment variables
| Variable | Required | What it does | Example | Source |
|---|---|---|---|---|
MEILI_MASTER_KEY | No | Protects every route except GET /health. Unset in a reachable deployment, the instance and all its data are open with no authentication. | a random string of at least 16 bytes | source for MEILI_MASTER_KEY |
MEILI_ENV | No | Instance environment, either production or development. Affects default behaviour such as whether MEILI_MASTER_KEY is required. | production | source for MEILI_ENV |
MEILI_DB_PATH | No | Directory where index data is stored on disk. | /meili_data/data.ms | source for MEILI_DB_PATH |
MEILI_NO_ANALYTICS | No | Disables Meilisearch's built-in telemetry when set. | true | source for MEILI_NO_ANALYTICS |
Volumes that must persist
| Path | What is in it | Source |
|---|---|---|
/meili_data | Holds the data.ms index directory set by MEILI_DB_PATH. Losing this loses every index. | source for /meili_data |
Behind a reverse proxy
- Route the domain to container port 7700, or whatever MEILI_HTTP_ADDR is set to. source for this reverse-proxy note
- Set MEILI_MASTER_KEY before exposing the instance through a proxy. Without it every search and write route is open to anyone who can reach the domain. source for this reverse-proxy note
Release timeline
| Version | Date | Breaking | What changed | Source |
|---|---|---|---|---|
v1.55.0 | 2026-10-12 | No | Adds an inlineRule search parameter to preview a dynamic search rule. It needs the Enterprise Edition and the dynamicSearchRules experimental feature. | source for release v1.55.0 |
v1.54.3 | 2026-10-01 | No | Stability fix release; the maintainers recommend updating from v1.54.2. | source for release v1.54.3 |
v1.54.0 | 2026-09-21 | Yes | Breaking changes to the experimental dynamicSearchRules API: rule actions are now an object with pin and scale lists. Rules migrate with --upgrade-db. | source for release v1.54.0 |
v1.53.2 | 2026-09-07 | No | Bug fixes for task replication delay and stop-word highlighting, plus a security fix tying authorization to index opening. | source for release v1.53.2 |
v1.53.1 | 2026-08-13 | No | Adds an environment variable to control the maximum number of LMDB read transactions for the task queue. | source for release v1.53.1 |
v1.52.0 | 2026-08-03 | No | Introduces the experimental /tasks/stream and /batches/stream SSE routes for a live connection to the engine. | source for release v1.52.0 |
v1.50.0 | 2026-07-20 | Yes | Revamps Dynamic Search Rules and introduces breaking changes for users of that feature. | source for release v1.50.0 |
If it is not coming up
- ECONNREFUSED / ENOTFOUND / connection to server at "postgres" port 5432 failed
- What self-hosting actually costs, versus Vercel plus Supabase
Read from the upstream documentation, repository and container registry by Keita Emsden on 2026-10-17. Every row links the page it came from. Upstream changes without telling anyone, so check the source link before you rely on a value.