Paperless-ngx: Unterschied zwischen den Versionen

Aus darkrealm Wiki
Zur Navigation springen Zur Suche springen
Chris (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Chris (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 175: Zeile 175:
* python3 manage.py migrate
* python3 manage.py migrate


== NLTK Fix ==
== Fixes ==
 
=== NLTK Fix ===


* python3 -W ignore::RuntimeWarning -m nltk.downloader -d "/mnt/storage/dms/nltk_data" punkt_tab
* python3 -W ignore::RuntimeWarning -m nltk.downloader -d "/mnt/storage/dms/nltk_data" punkt_tab


== Komplette Neuinstallation inkl. Komplettrestore ==
== Komplette Neuinstallation inkl. Komplettrestore ==

Version vom 30. Januar 2025, 19:57 Uhr

Installation

  • sudo lxc-create -n paperless-ngx -B zfs -t download -- --dist debian --release bookworm --arch amd64
  • dpkg-reconfigure tzdata
  • dpkg-reconfigure locales
  • apt install python3 python3-pip python3-dev imagemagick fonts-liberation gnupg libpq-dev default-libmysqlclient-dev pkg-config libmagic-dev mime-support libzbar0 poppler-utils apt-transport-https man-db vim bash-completion openssh-server unpaper ghostscript icc-profiles-free qpdf liblept5 libxml2 pngquant zlib1g tesseract-ocr redis tesseract-ocr-deu git locate curl wget python3.11-venv emacs-nox autoconf libtool libleptonica-dev curl wget vim sudo mariadb-server
  • adduser paperless --system --home /opt/paperless-ngx --group
  • curl -O -L https://github.com/paperless-ngx/paperless-ngx/releases/download/v2.1.3/paperless-ngx-v2.1.3.tar.xz
  • tar -xf paperless-ngx-v2.1.3.tar.xz -C/opt/
  • cd /opt/paperless-ngx
  • mkdir media
  • mkdir data
  • mkdir consume
  • chown -R paperless:paperless .
  • chown paperless:paperless media
  • chown paperless:paperless data
  • chown paperless:paperless consume
  • sudo -Hu paperless python3 -m venv venv-paperless-ngx
  • sudo -Hu paperless -s
  • . venv-paperless-ngx/bin/activate
  • pip3 install -r requirements.txt
  • cd src
  • vim /opt/paperless-ngx/paperless.conf
# Have a look at the docs for documentation.
# https://docs.paperless-ngx.com/configuration/

# Debug. Only enable this for development.

#PAPERLESS_DEBUG=false

# Required services

PAPERLESS_REDIS=redis://localhost:6379
PAPERLESS_DBENGINE=mariadb
PAPERLESS_DBHOST=shodan.intern.darkrealm.dyndns.org
PAPERLESS_DBPORT=3306
PAPERLESS_DBNAME=paperless
PAPERLESS_DBUSER=paperless
PAPERLESS_DBPASS=paperless
PAPERLESS_DBSSLMODE=DISABLED

# Paths and folders

#PAPERLESS_CONSUMPTION_DIR=../consume
#PAPERLESS_DATA_DIR=../data
#PAPERLESS_TRASH_DIR=../trash
#PAPERLESS_MEDIA_ROOT=../media
PAPERLESS_CONSUMPTION_DIR=/mnt/storage/dms/consume
PAPERLESS_DATA_DIR=/mnt/storage/dms/data
PAPERLESS_TRASH_DIR=/mnt/storage/dms/trash
PAPERLESS_MEDIA_ROOT=/mnt/storage/dms/media
PAPERLESS_STATICDIR=../static
#PAPERLESS_FILENAME_FORMAT=
PAPERLESS_FILENAME_FORMAT_REMOVE_NONE=true

# Security and hosting

PAPERLESS_SECRET_KEY=Peem7AhD
PAPERLESS_URL=https://paperless.darkrealm.dyndns.org
#PAPERLESS_CSRF_TRUSTED_ORIGINS=https://example.com # can be set using PAPERLESS_URL
#PAPERLESS_ALLOWED_HOSTS=example.com,www.example.com # can be set using PAPERLESS_URL
#PAPERLESS_CORS_ALLOWED_HOSTS=https://localhost:8080,https://example.com # can be set using PAPERLESS_URL
#PAPERLESS_FORCE_SCRIPT_NAME=
#PAPERLESS_STATIC_URL=/static/
#PAPERLESS_AUTO_LOGIN_USERNAME=
#PAPERLESS_COOKIE_PREFIX=
#PAPERLESS_ENABLE_HTTP_REMOTE_USER=false

# OCR settings

PAPERLESS_OCR_LANGUAGE=eng+deu
#PAPERLESS_OCR_MODE=skip
#PAPERLESS_OCR_SKIP_ARCHIVE_FILE=never
#PAPERLESS_OCR_OUTPUT_TYPE=pdfa
#PAPERLESS_OCR_PAGES=1
#PAPERLESS_OCR_IMAGE_DPI=300
#PAPERLESS_OCR_CLEAN=clean
#PAPERLESS_OCR_DESKEW=true
#PAPERLESS_OCR_ROTATE_PAGES=true
#PAPERLESS_OCR_ROTATE_PAGES_THRESHOLD=4
#PAPERLESS_OCR_USER_ARGS={}
#PAPERLESS_CONVERT_MEMORY_LIMIT=0
#PAPERLESS_CONVERT_TMPDIR=/var/tmp/paperless

PAPERLESS_ENABLE_NLTK=true
#PAPERLESS_NLTK_DIR=../nltk_data
PAPERLESS_NLTK_DIR=/mnt/storage/dms/nltk_data
# Software tweaks

#PAPERLESS_TASK_WORKERS=1
#PAPERLESS_THREADS_PER_WORKER=1
PAPERLESS_TIME_ZONE=Europe/Berlin
#PAPERLESS_CONSUMER_POLLING=10
#PAPERLESS_CONSUMER_DELETE_DUPLICATES=false
PAPERLESS_CONSUMER_RECURSIVE=true
#PAPERLESS_CONSUMER_IGNORE_PATTERNS=[".DS_STORE/*", "._*", ".stfolder/*", ".stversions/*", ".localized/*", "desktop.ini"]
#PAPERLESS_CONSUMER_SUBDIRS_AS_TAGS=false
#PAPERLESS_CONSUMER_ENABLE_BARCODES=false
#PAPERLESS_CONSUMER_BARCODE_STRING=PATCHT
#PAPERLESS_CONSUMER_BARCODE_UPSCALE=0.0
#PAPERLESS_CONSUMER_BARCODE_DPI=300
#PAPERLESS_CONSUMER_ENABLE_COLLATE_DOUBLE_SIDED=false
#PAPERLESS_CONSUMER_COLLATE_DOUBLE_SIDED_SUBDIR_NAME=double-sided
#PAPERLESS_CONSUMER_COLLATE_DOUBLE_SIDED_TIFF_SUPPORT=false
#PAPERLESS_PRE_CONSUME_SCRIPT=/path/to/an/arbitrary/script.sh
#PAPERLESS_POST_CONSUME_SCRIPT=/path/to/an/arbitrary/script.sh
#PAPERLESS_FILENAME_DATE_ORDER=YMD
#PAPERLESS_FILENAME_PARSE_TRANSFORMS=[]
#PAPERLESS_NUMBER_OF_SUGGESTED_DATES=5
#PAPERLESS_THUMBNAIL_FONT_NAME=
#PAPERLESS_IGNORE_DATES=
#PAPERLESS_ENABLE_UPDATE_CHECK=

# Tika settings

PAPERLESS_TIKA_ENABLED=true
PAPERLESS_TIKA_ENDPOINT=http://localhost:9998
PAPERLESS_TIKA_GOTENBERG_ENDPOINT=http://localhost:3000

# Binaries

#PAPERLESS_CONVERT_BINARY=/usr/bin/convert
#PAPERLESS_GS_BINARY=/usr/bin/gs
  • DB und User erstellen
  • sudo -Hu paperless python3 manage.py migrate
  • sudo -Hu paperless python3 manage.py createsuperuser
  • cp -av ../scripts/*.service /etc/systemd/system/
  • cp -av ../scripts/*.socket /etc/systemd/system/
  • systemctl daemon-reload

ImageMagick Policy in /etc/ImageMagick-6/policy.xml anpassen:

  <policy domain="coder" rights="read|write" pattern="PDF" />

JBIG2ENC compilen:

NLTK installieren

  • sudo -Hu paperless -s
  • . venv-paperless-ngx/bin/activate
  • python3
  • import nltk
  • nltk.download() (Nach /opt/paperless-ngx/nltk_data herunterladen)
  • punkt, snowball_data und stopwords runterladen

Apache Tika und Gotenberg installieren (momentan über Docker)

  • apt install docker-compose
  • docker run -d -p 127.0.0.1:9998:9998 apache/tika
  • docker run -d -p 127.0.0.1:3000:3000 gotenberg/gotenberg:8

Update

  • wget aktuellstes tar.xf
  • systemctl stop paperless-*
  • tar -xf <release.tar.xf> -C/opt/
  • cd /opt/paperless-ngx
  • cp -av paperless.conf.keep paperless.conf
  • chown paperless:paperless . -R
  • sudo -Hu paperless -s
  • source /opt/paperless-ngx/venv-paperless-ngx/bin/activate
  • pip install -r requirements.txt
  • cd src
  • python3 manage.py migrate

Fixes

NLTK Fix

  • python3 -W ignore::RuntimeWarning -m nltk.downloader -d "/mnt/storage/dms/nltk_data" punkt_tab

Komplette Neuinstallation inkl. Komplettrestore