Skip to content

Installation

This guide covers different installation methods for Loggator.

The easiest way to run Loggator is with Docker Compose.

services:
meilisearch:
image: getmeili/meilisearch:v1.12
container_name: meilisearch
environment:
MEILI_MASTER_KEY: ${MEILI_MASTER_KEY}
MEILI_ENV: production
volumes:
- ./meilisearch-data:/meili_data
networks:
- loggator-network
restart: unless-stopped
loggator:
image: ghcr.io/mbeggiato/loggator:latest
container_name: loggator
ports:
- "3000:3000"
environment:
MEILISEARCH_HOST: http://meilisearch:7700
MEILISEARCH_API_KEY: ${MEILI_MASTER_KEY}
DOCKER_LABEL_FILTER: loggator.enable=true
PORT: 3000
# AI Configuration (optional)
OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}
AI_MODEL: xiaomi/mimo-v2-flash:free
SITE_URL: ${SITE_URL:-http://localhost:3000}
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
depends_on:
- meilisearch
networks:
- loggator-network
restart: unless-stopped
labels:
- "loggator.enable=true"
networks:
loggator-network:
driver: bridge

Create a .env file in the same directory:

Terminal window
# Required
MEILI_MASTER_KEY=your-generated-secure-key-here
# Optional - AI Assistant
OPENROUTER_API_KEY=sk-or-v1-your-key-here
SITE_URL=http://localhost:3000
Terminal window
docker compose up -d

If you prefer to run containers individually:

Terminal window
docker run -d \
--name meilisearch \
-p 7700:7700 \
-e MEILI_MASTER_KEY=your-secure-key \
-v $(pwd)/meilisearch-data:/meili_data \
getmeili/meilisearch:v1.12
Terminal window
docker run -d \
--name loggator \
-p 3000:3000 \
-e MEILISEARCH_HOST=http://meilisearch:7700 \
-e MEILISEARCH_API_KEY=your-secure-key \
-e OPENROUTER_API_KEY=your-openrouter-key \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
--link meilisearch \
ghcr.io/mbeggiato/loggator:latest

For development or custom builds:

  • Node.js 20+ or Bun
  • Docker (for running Meilisearch)
Terminal window
git clone https://github.com/MBeggiato/loggator.git
cd loggator
Terminal window
# Using npm
npm install
# Or using bun (recommended)
bun install
Terminal window
# Start Meilisearch and test logger
bun run dev:services
# In another terminal, start dev server
bun run dev

The application will be available at http://localhost:5173

Terminal window
# Build the application
bun run build
# Preview production build
bun run preview
  • CPU: 1 core
  • RAM: 512 MB (without logs), 1 GB+ recommended
  • Disk: 1 GB + space for logs
  • Docker: 20.10+
  • Docker Compose: 2.0+
  • CPU: 2+ cores
  • RAM: 2 GB+
  • Disk: SSD with 10+ GB
  • Network: Stable connection for AI features

By default, Loggator uses these ports:

  • 3000 - Loggator Web UI
  • 7700 - Meilisearch (internal, can be exposed)

To change ports, update the docker-compose.yml:

services:
loggator:
ports:
- "8080:3000" # Access on port 8080

Persistent storage for indexed logs:

volumes:
- ./meilisearch-data:/meili_data

Required for reading container logs:

volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro

Loggator and Meilisearch should be on the same network:

networks:
loggator-network:
driver: bridge

Verify services are running:

Terminal window
# Check Loggator
curl http://localhost:3000/api/status
# Check Meilisearch
curl http://localhost:7700/health

To upgrade to the latest version:

Terminal window
# Pull latest images
docker compose pull
# Restart services
docker compose up -d

To completely remove Loggator:

Terminal window
# Stop and remove containers
docker compose down
# Remove volumes (deletes all logs!)
docker compose down -v
# Remove images
docker rmi ghcr.io/mbeggiato/loggator:latest
docker rmi getmeili/meilisearch:v1.12