Search

Install Meilisearch on your VPS

Infraa installs Meilisearch on your VPS as a single pinned binary — a fast, typo-tolerant open-source search engine with filtering, faceting, and a simple REST API. The binary is verified against a checked-in SHA-256, runs as a dedicated non-root system user in production mode, binds to localhost on the port you choose, and is protected by a master key you set at install time.

Versions
Meilisearch 1.49.0, a pinned single-binary release verified by SHA-256
Works on
Ubuntu 22.04, Ubuntu 24.04, and Debian 12
Package source
Pinned binary release

What does the Meilisearch install do?

  • Creates a dedicated, non-login system user (infraa-meilisearch) — Meilisearch never runs as root.
  • Downloads the pinned Meilisearch binary into /opt/infraa/apps/meilisearch, verifying it against a SHA-256 checksum that ships in the reviewed catalog before it's moved into place.
  • Installs a systemd unit (infraa-meilisearch.service) that runs Meilisearch in production mode bound to 127.0.0.1 on your chosen port, with index data in /var/lib/infraa-meilisearch.
  • Delivers your master key to the process only through the unit's root-readable environment — it's stored encrypted by Infraa and never appears in process arguments or logs.

How do I install Meilisearch with Infraa?

  1. Connect your server

    Run the Infraa install one-liner (curl install.infraa.sh | sh) on your VPS. The agent registers over an outbound connection in about 30 seconds — no inbound ports, no SSH keys to share.

  2. Pick the service

    Choose it from the one-click catalog in the dashboard, or just ask in chat. Infraa turns your request into a concrete, reviewable plan.

  3. Review and approve

    Read exactly what will run, then approve. The agent executes only the approved, cryptographically signed steps and streams progress live.

What happens after the install?

Infraa checks Meilisearch every 60 seconds — the service unit and your chosen port. Every API request must present the master key (or an API key derived from it); best practice is to create scoped API keys for your apps rather than sharing the master key. To put it on the internet, install the nginx module and point a managed vhost with Let's Encrypt at the port.

Meilisearch on Infraa — common questions

01

Is Meilisearch exposed to the internet after the install?

No. The systemd unit binds Meilisearch to 127.0.0.1 on the port you choose (7700 by default), so only processes on the server can reach it. To expose it publicly with a domain and TLS, install the nginx module and point a managed reverse-proxy vhost with Let's Encrypt at that port.

02

How is the Meilisearch master key handled?

You set it at install time; Infraa stores it encrypted and delivers it to the process only through the service unit's environment, which is readable by root alone. It never appears in process arguments, service logs, or Infraa's stored playbook output. Use it once to create scoped API keys and give your applications those instead.

03

Where does my Meilisearch data live?

In /var/lib/infraa-meilisearch — the index data, dumps, and snapshots. It survives restarts and re-installs, and uninstalling removes the service but leaves your data and the binary in place, so reinstalling later resumes from the same data.

Connect a server in 30 seconds, then install Meilisearch from the catalog or just ask in chat.