Skip to content

Installation

This guide covers installing OntExtract on your local machine.

Quick Start Options

Method Best For Time
Live Demo Trying it out without installation Instant
Docker Local development, most users 5 minutes
Manual Contributors, custom deployments 30+ minutes

Option 1: Live Demo

Access the live system at https://ontextract.ontorealm.net

  • Demo credentials: demo / demo123
  • Pre-loaded experiment with sample documents
  • No installation required

Docker provides the fastest path to a working local installation.

Prerequisites

  • Docker Engine 20.10+
  • Docker Compose 2.0+
  • 4GB RAM minimum
  • 10GB free disk space

Windows: Docker Desktop with WSL2 integration enabled

macOS: Docker Desktop

Linux: Docker Engine + Docker Compose plugin

Quick Start

cd OntExtract
docker-compose up -d

This starts all services: - Web application on http://localhost:8765 - PostgreSQL database - Redis cache - Celery background workers

Default Login

  • Username: admin
  • Password: admin123

Change the password after first login in production!

Enable LLM Features (Optional)

For AI-assisted orchestration, create .env.local:

cp .env.docker .env.local

Add your API key:

ANTHROPIC_API_KEY=sk-ant-your-key-here

Restart services:

docker-compose up -d

Common Commands

# View logs
docker-compose logs -f

# Stop services (keeps data)
docker-compose stop

# Stop and remove containers (keeps data volumes)
docker-compose down

# Stop and remove everything including data
docker-compose down -v

# Rebuild after code changes
docker-compose up -d --build

Troubleshooting Docker

Port already in use:

# Stop conflicting local services
sudo systemctl stop postgresql redis-server

Container won't start:

docker-compose logs web
docker-compose restart web

Database connection issues:

docker-compose exec postgres pg_isready -U postgres
docker-compose exec web flask db upgrade

Option 3: Manual Installation

For advanced users who need to modify the code or can't use Docker.

System Requirements

  • Python 3.12+
  • PostgreSQL 14+ with pgvector extension
  • Redis 6+
  • 2GB RAM minimum

Ubuntu/Debian Setup

# Install system dependencies
sudo apt-get update
sudo apt-get install -y postgresql-14 postgresql-14-pgvector redis-server python3.12 python3.12-venv

# Create database
sudo -u postgres psql -c "CREATE DATABASE ontextract_db;"
sudo -u postgres psql -d ontextract_db -c "CREATE EXTENSION vector;"

Python Environment

# Create virtual environment
python3.12 -m venv venv
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt
python -m spacy download en_core_web_sm

Configuration

# Copy environment template
cp .env.example .env

# Edit with your settings
nano .env

Key settings in .env:

DATABASE_URL=postgresql://postgres:password@localhost:5432/ontextract_db
REDIS_URL=redis://localhost:6379/0
SECRET_KEY=your-secret-key-here
ANTHROPIC_API_KEY=sk-ant-your-key-here  # Optional

Initialize Database

flask db upgrade
flask seed-defaults   # Seed prompt templates and settings
python init_admin.py  # Create admin user

Start Services

You need three terminal sessions:

# Terminal 1: Redis (if not running as service)
redis-server

# Terminal 2: Celery worker
celery -A celery_config.celery worker --loglevel=info

# Terminal 3: Flask application
python run.py

Access at http://localhost:8765

Resource Requirements

Minimum

  • CPU: 2 cores
  • RAM: 4GB
  • Disk: 10GB
  • CPU: 4+ cores
  • RAM: 8GB+
  • Disk: 20GB+

Next Steps

After installation:

  1. First Login - Create your account and explore the interface
  2. Create Anchor Terms - Define concepts to track
  3. Upload Documents - Add your source materials
  4. Create Experiment - Set up your first analysis