Meilisearch + Mini Dashboard
Lightning fast search engine with typo tolerance.
Overview
Meilisearch is an open-source search engine built in Rust that delivers sub-50ms search responses with built-in typo tolerance and zero-configuration setup. Originally developed by the French company Meili, it emerged as a developer-friendly alternative to complex solutions like Elasticsearch, focusing on instant search experiences without the operational overhead. Unlike traditional search engines that require extensive configuration and tuning, Meilisearch works intelligently out of the box with features like automatic typo correction, relevance ranking, and faceted search.
This stack combines the core Meilisearch engine with the riccoxie/meilisearch-ui dashboard, creating a complete search solution with visual management capabilities. The dashboard provides an intuitive interface for index management, document browsing, search testing, and analytics visualization, while Meilisearch handles the high-performance search operations through its RESTful API. The two components communicate over a dedicated Docker network, with the dashboard automatically connecting to the Meilisearch instance.
This combination is ideal for developers and organizations who need powerful search capabilities without the complexity of enterprise solutions. Startups building e-commerce platforms, content sites, or applications requiring instant search will benefit from Meilisearch's simplicity and performance, while the dashboard makes it accessible to non-technical team members for content management and search optimization.
Key Features
- Sub-50ms search responses with built-in performance optimization
- Automatic typo tolerance with intelligent correction algorithms
- Faceted search and filtering with customizable attributes
- Visual dashboard for index management and search analytics
- Highlighting and snippet generation for search results
- Custom ranking rules with attribute-based relevance tuning
- Multi-tenancy support with API key-based access control
- RESTful API with comprehensive search and indexing endpoints
Common Use Cases
- 1E-commerce product catalogs with instant search and filtering
- 2Documentation sites requiring fast content discovery
- 3Content management systems with full-text search capabilities
- 4Small to medium-scale applications needing typo-tolerant search
- 5Development environments for testing search implementations
- 6Internal knowledge bases and company wikis
- 7Educational platforms with course and content search functionality
Prerequisites
- Minimum 256MB RAM available (1GB+ recommended for production)
- Docker and Docker Compose installed on the host system
- Ports 7700 and 24900 available on the host machine
- Basic understanding of REST APIs for Meilisearch integration
- MASTER_KEY environment variable configured for production security
For development & testing. Review security settings, change default credentials, and test thoroughly before production use. See Terms
docker-compose.yml
docker-compose.yml
1services: 2 meilisearch: 3 image: getmeili/meilisearch:latest4 environment: 5 - MEILI_MASTER_KEY=${MASTER_KEY}6 - MEILI_ENV=production7 - MEILI_NO_ANALYTICS=true8 volumes: 9 - meilisearch-data:/meili_data10 ports: 11 - "7700:7700"12 networks: 13 - meilisearch-network14 restart: unless-stopped1516 dashboard: 17 image: riccoxie/meilisearch-ui:latest18 environment: 19 - MEILI_HOST=http://meilisearch:770020 ports: 21 - "24900:24900"22 depends_on: 23 - meilisearch24 networks: 25 - meilisearch-network26 restart: unless-stopped2728volumes: 29 meilisearch-data: 3031networks: 32 meilisearch-network: 33 driver: bridge.env Template
.env
1# Meilisearch2MASTER_KEY=your-master-key-at-least-16-chars34# Generate key: openssl rand -base64 32Usage Notes
- 1API at http://localhost:7700
- 2Dashboard at http://localhost:24900
- 3Typo tolerance built-in
- 4Faceted search
- 5RESTful API
Individual Services(2 services)
Copy individual services to mix and match with your existing compose files.
meilisearch
meilisearch:
image: getmeili/meilisearch:latest
environment:
- MEILI_MASTER_KEY=${MASTER_KEY}
- MEILI_ENV=production
- MEILI_NO_ANALYTICS=true
volumes:
- meilisearch-data:/meili_data
ports:
- "7700:7700"
networks:
- meilisearch-network
restart: unless-stopped
dashboard
dashboard:
image: riccoxie/meilisearch-ui:latest
environment:
- MEILI_HOST=http://meilisearch:7700
ports:
- "24900:24900"
depends_on:
- meilisearch
networks:
- meilisearch-network
restart: unless-stopped
Quick Start
terminal
1# 1. Create the compose file2cat > docker-compose.yml << 'EOF'3services:4 meilisearch:5 image: getmeili/meilisearch:latest6 environment:7 - MEILI_MASTER_KEY=${MASTER_KEY}8 - MEILI_ENV=production9 - MEILI_NO_ANALYTICS=true10 volumes:11 - meilisearch-data:/meili_data12 ports:13 - "7700:7700"14 networks:15 - meilisearch-network16 restart: unless-stopped1718 dashboard:19 image: riccoxie/meilisearch-ui:latest20 environment:21 - MEILI_HOST=http://meilisearch:770022 ports:23 - "24900:24900"24 depends_on:25 - meilisearch26 networks:27 - meilisearch-network28 restart: unless-stopped2930volumes:31 meilisearch-data:3233networks:34 meilisearch-network:35 driver: bridge36EOF3738# 2. Create the .env file39cat > .env << 'EOF'40# Meilisearch41MASTER_KEY=your-master-key-at-least-16-chars4243# Generate key: openssl rand -base64 3244EOF4546# 3. Start the services47docker compose up -d4849# 4. View logs50docker compose logs -fOne-Liner
Run this command to download and set up the recipe in one step:
terminal
1curl -fsSL https://docker.recipes/api/recipes/meilisearch-complete/run | bashTroubleshooting
- Dashboard shows connection error: Verify the MEILI_HOST environment variable points to http://meilisearch:7700 and both containers are on the same network
- Meilisearch returns 401 Unauthorized: Ensure the MASTER_KEY environment variable is set and API requests include the correct Authorization header
- Search queries return empty results: Check that documents are properly indexed and searchable attributes are configured correctly through the API
- Container fails to start with permission errors: Verify the meilisearch-data volume has proper write permissions and sufficient disk space
- Dashboard interface not loading: Confirm port 24900 is not blocked by firewall and the dashboard container has successfully started after meilisearch
Community Notes
Loading...
Loading notes...
Download Recipe Kit
Get all files in a ready-to-deploy package
Includes docker-compose.yml, .env template, README, and license
Components
meilisearchmeilisearch-dashboard
Tags
#meilisearch#search#full-text#typo-tolerant#instant
Category
Database StacksAd Space
Shortcuts: C CopyF FavoriteD Download