Favicon of Docspell

Docspell

Manage digital documents from scanners and emails easily. Extract text using OCR, convert files to searchable PDFs, and find exactly what you need fast.

Take control of your digital files by bringing together documents from scanners and emails into one centralized hub. This system minimizes manual sorting by automatically analyzing and categorizing your uploads.

Enjoy features designed to make document retrieval simple:

  • Multi-User Accounts: Share access with family or colleagues while maintaining individual settings.
  • Automated OCR: Extract text from scanned images and documents to make everything instantly searchable.
  • Smart Text Analysis: Use machine learning to automatically annotate and tag files based on content.
  • PDF Conversion: Upload various formats, including ZIP and EML. Files are converted to searchable PDFs while preserving untouched originals.
  • Email Integration: Import emails directly via IMAP schedules and share documents using custom SMTP settings.

Directory Structure

docspell
data
files
postgres
solr
.env
docker-compose.yml

docker-compose.yml

services:
  # The database service
  db:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      - POSTGRES_USER=docspell
      - POSTGRES_PASSWORD=${DB_PASSWORD}
      - POSTGRES_DB=docspell
    volumes:
      - ./data/postgres:/var/lib/postgresql/data

  # The search index service
  solr:
    image: solr:9
    restart: unless-stopped
    volumes:
      - ./data/solr:/var/solr
    command:
      - solr-precreate
      - docspell

  # The backend server
  restserver:
    image: docspell/restserver:latest
    restart: unless-stopped
    ports:
      - "7880:7880"
    environment:
      - TZ=Europe/Berlin
      - DOCSPELL_SERVER_ADMIN_ENDPOINT_SECRET=${ADMIN_SECRET}
      - DOCSPELL_SERVER_AUTH_SERVER_SECRET=${AUTH_SECRET}
      - DOCSPELL_SERVER_BACKEND_JDBC_PASSWORD=${DB_PASSWORD}
      - DOCSPELL_SERVER_BACKEND_JDBC_URL=jdbc:postgresql://db:5432/docspell
      - DOCSPELL_SERVER_BACKEND_JDBC_USER=docspell
      - DOCSPELL_SERVER_FULL_TEXT_SEARCH_SOLR_URL=http://solr:8983/solr/docspell
      - DOCSPELL_SERVER_FILE_STORE_TYPE=FileSystem
      - DOCSPELL_SERVER_FILE_STORE_FILE_SYSTEM_BASE_DIR=/var/lib/docspell/files
    depends_on:
      - solr
      - db
    volumes:
      - ./data/files:/var/lib/docspell/files

  # The job executor (OCR, processing)
  joex:
    image: docspell/joex:latest
    restart: unless-stopped
    environment:
      - TZ=Europe/Berlin
      - DOCSPELL_JOEX_JDBC_PASSWORD=${DB_PASSWORD}
      - DOCSPELL_JOEX_JDBC_URL=jdbc:postgresql://db:5432/docspell
      - DOCSPELL_JOEX_JDBC_USER=docspell
      - DOCSPELL_JOEX_FULL_TEXT_SEARCH_SOLR_URL=http://solr:8983/solr/docspell
      - DOCSPELL_JOEX_FILE_STORE_TYPE=FileSystem
      - DOCSPELL_JOEX_FILE_STORE_FILE_SYSTEM_BASE_DIR=/var/lib/docspell/files
    depends_on:
      - solr
      - db
    volumes:
      - ./data/files:/var/lib/docspell/files

.env

DB_PASSWORD=secure_postgres_password
ADMIN_SECRET=secure_admin_secret_key
AUTH_SECRET=secure_auth_secret_key_for_jwt_signing

Share:

Ad
Favicon

 

  
 

Similar to Docspell

Favicon

 

  
  
Favicon

 

  
  
Favicon