Quick Start
Prerequisites
- Docker and Docker Compose (v2+)
- A directory with your ebook collection (EPUB, PDF, etc.)
1. Create Compose File
Create a directory and a docker-compose.yml file:
mkdir -p omnigram && cd omnigramservices: omnigram-server: image: lxpio/omnigram-server:latest ports: - "8080:80" volumes: - /path/to/your/books:/docs # Your ebook directory - omnigram_data:/metadata # Server data (persistent) environment: DB_DRIVER: postgres DB_HOST: db DB_PORT: 5432 DB_USER: omnigram DB_PASSWORD: omnigram DB_NAME: omnigram OMNI_USER: admin # Admin username OMNI_PASSWORD: changeme # Change this! depends_on: db: condition: service_healthy restart: unless-stopped
db: image: pgvector/pgvector:pg17 environment: POSTGRES_USER: omnigram POSTGRES_PASSWORD: omnigram POSTGRES_DB: omnigram volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U omnigram"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped
volumes: pgdata: omnigram_data:2. Start the Server
docker compose up -dWait for the database to become healthy and the server to start (~10 seconds):
docker compose logs -f omnigram-serverYou should see:
omnigram-server | HTTP server address: 0.0.0.0:803. Log In & Scan Books
- Open http://your-server-ip:8080 in your browser
- Log in with the username and password you set above
- Go to Settings > Library > Scan to import your books
- The scan will index all EPUB/PDF files in your book directory
Next Steps
- Installation Guide for TTS, AI, reverse proxy, and advanced configuration
- Download the Omnigram App and connect to your server
- Try OPDS clients like Moon+ Reader or KOReader