Getting Started
Open-source log management. Privacy-first. Self-hosted or cloud.
Deployment Options
Zero setup required. Start logging in seconds.
Self-Hosted Quick Start
Prerequisites
- Docker Engine - Container runtime
- Docker Compose - Multi-container orchestration
That's it! No Node.js, no build tools, no database setup. Uses pre-built images from Docker Hub.
Installation (2 minutes)
# 1. Create project directory
mkdir logtide && cd logtide
# 2. Download configuration files
curl -O https://raw.githubusercontent.com/logtide-dev/logtide/main/docker/docker-compose.yml
curl -O https://raw.githubusercontent.com/logtide-dev/logtide/main/docker/.env.example
mv .env.example .env
# 3. Configure secure passwords (IMPORTANT!)
nano .env
# Change: DB_PASSWORD, REDIS_PASSWORD, API_KEY_SECRET
# 4. Start LogTide
docker compose up -d
# 5. Access the dashboard
# Frontend: http://localhost:3000
# API: http://localhost:8080 - Pulls pre-built images from Docker Hub
- Starts PostgreSQL + TimescaleDB (database)
- Starts Redis (queue & cache)
- Runs database migrations
- Starts backend API & worker
- Starts frontend dashboard
Required Configuration
Edit your .env file and set secure values for these variables:
| Variable | Description |
|---|---|
| DB_PASSWORD | PostgreSQL database password |
| REDIS_PASSWORD | Redis password |
| API_KEY_SECRET | Encryption key (32+ characters) |
Database migrations run automatically on first start.
Pre-built images are available from:
- Docker Hub:
logtide/backend,logtide/frontend - GitHub:
ghcr.io/logtide-dev/logtide-backend
Pin versions in production: LOGTIDE_BACKEND_IMAGE=logtide/backend:0.4.0
Troubleshooting
"Failed to Fetch" Error on First Access
If you see a "Failed to Fetch" error when accessing the dashboard for the first time, the frontend cannot reach the backend API. This typically happens with Docker orchestrators (Portainer, Komodo, etc.) or non-standard network setups.
How auto-detection works: When you access via http://192.168.1.100:3000,
the frontend assumes the API is at http://192.168.1.100:8080.
If you access via a reverse proxy on port 80/443, it uses relative URLs.
Fix: If auto-detection fails, explicitly set the API URL in your .env file:
# Set this to your Docker host's accessible address
PUBLIC_API_URL=http://your-docker-host:8080
Then restart the frontend: docker compose restart frontend
Containers Not Starting / Unhealthy
Check container logs to identify the issue:
# Check all container status
docker compose ps
# View logs for a specific service
docker compose logs backend
docker compose logs postgres
docker compose logs redis First Steps
1. Create Your Organization
After logging in, create your first organization to get started. Organizations are top-level containers for your projects.
2. Create a Project
Each organization can have multiple projects (e.g., "production", "staging"). Projects isolate logs and have their own API keys.
3. Generate an API Key
In your project settings, create an API key to start sending logs. Save it securely - it's shown only once!
4. Send Your First Log
Choose your preferred method to start sending logs to LogTide: