Paperless Installation

Paperless: Eine ökologische und effiziente Art des Dokumentenmanagements

In Zeiten, in denen die Technologie immer weiter voranschreitet, ist es wichtiger denn je, ökologischer und effizienter zu arbeiten. Ein Bereich, in dem viele Unternehmen und Einzelpersonen noch Raum für Verbesserungen sehen, ist das Dokumentenmanagement. Hier kommt das Konzept des „Paperless“ oder „papierlosen Büros“ ins Spiel.

Paperless bedeutet, dass alle Dokumente in digitaler Form gespeichert und verwaltet werden, anstatt in Papierform. Dies bietet eine Vielzahl von Vorteilen gegenüber dem traditionellen Papierdokumentenmanagement.

Zunächst einmal ist es ökologischer. Das Speichern und Verwalten von Dokumenten in digitaler Form reduziert den Bedarf an Papier, Tinte und Energie, die für den Druck und die Lagerung von Papierdokumenten erforderlich sind. Außerdem wird weniger Müll produziert, da keine Papierdokumente mehr weggeworfen werden müssen.

Zweitens ist es effizienter. Mit einem papierlosen Büro können Dokumente schnell und einfach gesucht und gefunden werden, da sie in einer zentralen digitalen Datenbank gespeichert sind. Dokumente können auch schnell und einfach digital geteilt und bearbeitet werden, ohne dass es notwendig ist, sie auszudrucken und zu versenden.

Drittens bietet es eine bessere Sicherheit. Papierdokumente können verloren gehen, beschädigt werden oder gestohlen werden. Digitale Dokumente hingegen können mit einer Vielzahl von Sicherheitsfunktionen geschützt werden, wie z.B. Passwortschutz, Verschlüsselung und automatische Datensicherung.

Um ein papierloses Büro einzurichten, gibt es viele Tools und Technologien, die Sie verwenden können. Dazu gehören Dokumentenmanagement-Systeme, Cloud-Speicherdienste und Scanner-Apps. Es ist wichtig, dass Sie das Tool oder die Technologie auswählen, die am besten zu Ihren Bedürfnissen und Anforderungen passt.

Zusammenfassend ist das Konzept des papierlosen Büros eine ökologische und effiziente Möglichkeit, Dokumente zu verwalten

Meine Anforderungen an ein System zur Dokumentenverwaltung:

  • Intuitives UI
  • Automatische Sortierung in Ordner / Zuordnung von Tags
  • OCR
  • Original-Daten nicht in Datenbank “gefangen”
  • Single-User ausreichend
  • Fokus auf PDF-Dateien
  • Akzeptabler Aufwand für Installation und Pflege
  • Keine Cloud Lösung

Mir ist besonders der Punkt wichtig, dass die Dokumente in keiner Datenbank “gefangen” sind. Denn dies würde voraussetzen, dass das Dokumentenverwaltungssystem laufen muss, damit ich auf die Dokumente zugreifen kann. Was ist im Notfall? Die Software startet nicht mehr, weil irgendein Update die Datenbank beschädigt hat? Oder einfach nur, weil der Docker-Daeamon nicht mehr mag. Klar, mit einem guten Backup, sollte dies alles in den Griff zu bekommen sein, aber man weiß ja nicht. Also sollten die Original-Dokumente möglichst “nackt” im Dateisystem liegen.

Installation

Die Installation ist für jeden, der schon ein wenig Erfahrungen mit Docker bzw Portainer hat, einfach.

Der Konfigurations Script läst sich noch belibig Anpassen.In diesem File wird die Konfiguration durchgeführt. Es sind nur ein paar wenige Änderungen notwendig:

  • Die korrekte Zeitzone setzen:

    PAPERLESS_TIME_ZONE=Europe/Berlin

  • Die korrekte Sprache für OCR setzten:

    PAPERLESS_OCR_LANGUAGE=deu

  • Und nun noch die Ordnerstruktur festlegen:

    PAPERLESS_FILENAME_FORMAT={created_year}/{correspondent}/{title}

Die letzte Einstellung legt fest, wie die PDF-Dateien im Dateisystem abgelegt werden sollen. In diesem Fall z.B.

Würde die letzte Option nicht gesetzt werden, würden alle Dateien nur flach in einem Verzeichnis mit einer eindeutigen ID liegen. Nicht sehr übersichtlich. Mit der oben gezeigten Änderung können Dokumente bei Bedarf auch ohne ein lauffähiges Paperless-ng im Dateisystem wiedergefunden werden.

Über SSH auf dem Raspberry einloggen und die Ordnerstruktur anlegen.

 – /mnt/paperless/data:
– /mnt/paperless/media:
– /mnt/paperless/export:
– /mnt/paperless/consume:
– /mnt/paperless/db-backup:

diesen kann man sich belibig anpassen. In Portainer nun die Stack funktion wählen und den Code einfügen.

hier sollte man sich folgende Werte Anpassen:

  • Datenbank Passwort
  • freien Port wählen
     ports:
    – 8010:8000
  • Benutzerkennung, diese sollte in den meisten fällen passen
    USERMAP_GID: 1000
    USERMAP_GID: 1000
  • wenn mann vor hat paperless öffentlcih zu betreiben diesn Code ändern.
    PAPERLESS_SECRET_KEY

In Portainer auf Stacks und +Add stack drücken.

				
					version: '3.4'

networks:
  internal:
    external: false

services:
  broker:
    container_name: paperless-redis
    image: redis:6.2
    networks:
      - internal
    restart: unless-stopped

  db:
    container_name: paperless-db
    image: postgres:14
    networks:
      - internal
    restart: unless-stopped
    volumes:
      - /mnt/paperless/db:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: paperless
      POSTGRES_USER: paperless
      POSTGRES_PASSWORD: 123

  webserver:
    container_name: paperless
    image: ghcr.io/paperless-ngx/paperless-ngx:latest
    networks:
      - internal
    restart: unless-stopped
    depends_on:
      - db
      - broker
    ports:
      - 8010:8000
    healthcheck:
      test: ['CMD', 'curl', '-f', 'http://localhost:8000']
      interval: 30s
      timeout: 10s
      retries: 5
    volumes:
      - /mnt/paperless/data:/usr/src/paperless/data
      - /mnt/paperless/media:/usr/src/paperless/media
      - /mnt/paperless/export:/usr/src/paperless/export
      - /mnt/paperless/consume:/usr/src/paperless/consume
    environment:
      PAPERLESS_REDIS: redis://broker:6379
      PAPERLESS_DBHOST: db
      PAPERLESS_DBPASS: 123
      USERMAP_UID: 1000
      USERMAP_GID: 1000
      PAPERLESS_OCR_LANGUAGES: eng deu
      PAPERLESS_SECRET_KEY: pa6lHUuc1W8PQWdsP6wXViH1cJoKV38zj9ixRkDeTv3Q0iX8O9pNdq9GVXIqH6gilf4uV18vVy5KTeLAvgZz9ZsF9g5jmx5
      PAPERLESS_ALLOWED_HOSTS: 'localhost,192.168.178.8'
      PAPERLESS_TIME_ZONE: Europe/Berlin
      PAPERLESS_OCR_LANGUAGE: deu
      PAPERLESS_FILENAME_FORMAT: '{created_year}/{correspondent}/{title}'
      PAPERLESS_TIKA_ENABLED: 1
      PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
      PAPERLESS_TIKA_ENDPOINT: http://tika:9998

  db-backup:
    container_name: paperless-db-backup
    image: postgres:14
    volumes:
      - /mnt/paperless/db-backup:/dump
      - /etc/localtime:/etc/localtime:ro
    environment:
      PGHOST: db
      PGDATABASE: paperless
      PGUSER: paperless
      PGPASSWORD: 123
      BACKUP_NUM_KEEP: 10
      BACKUP_FREQUENCY: 7d
    entrypoint: |
      bash -c 'bash -s <<EOF
      trap "break;exit" SIGHUP SIGINT SIGTERM
      sleep 2m
      while /bin/true; do
        pg_dump -Fc > /dump/dump_\`date +%d-%m-%Y"_"%H_%M_%S\`.psql
        (ls -t /dump/dump*.psql|head -n $$BACKUP_NUM_KEEP;ls /dump/dump*.psql)|sort|uniq -u|xargs rm -- {}
        sleep $$BACKUP_FREQUENCY
      done
      EOF'
    networks:
      - internal

  gotenberg:
    image: gotenberg/gotenberg:7
    restart: unless-stopped
    command:
      - "gotenberg"
      - "--chromium-disable-routes=true"
    environment:
      CHROMIUM_DISABLE_ROUTES: 1
    networks:
      - internal

  tika:
    image: iwishiwasaneagle/apache-tika-arm
    restart: unless-stopped
    networks:
      - internal
				
			

Dem Stack einen Namen geben  ( klein geschrieben ) und unten auf „Deploy the stack“ die Installation starten.

Nach einem kurzen moment sollte alles Installiert sein.

Über die ServerIp:8010 sollte mann Paperless Oberfläche erreichen können.

neuen Benutzer Anlegen

Wir können uns aber vermutlich noch nicht anmelden, weil kein Benutzer erstellt wurde. Dies erledigen wir auch in Portainer. Dazu drücke ich auf den „paperless“ Container.

Anschließend auf >_Console.

Und dann Connect.

Die Erstellung eines neuen Benutzers startet man mit folgendem Code.

				
					python3 manage.py createsuperuser
				
			

Es muss ein Benutzername, eine E-Mail-Adresse und ein Passwort eingegeben werden. Jetzt sollte es auch möglich sein sich anzumelden.

Paperless Changelog

aktuelle Version Paperless-ngx 1.10.0

aktualisiert wird der Docker Container automatisch durch Watchtower.

Das könnte Dich auch interessieren…

Anleitungen zur Installation in Docker

Heimdall Installation

Das Heimdall Dashboard bietet die Möglichkeit eine zentrale Startseite für euren Browser für all eure Homelab Applikationen zu sein. Ich zeige euch, wie ihr mit wenigen Befehlen Heimdall als Docker Container konfigurieren könnt

weiter lesen »

DietPi – Zeitserver Probleme

Bei den meisten Geräten ist ein Chip für die Real Time Clock (RTC) mit dazugehöriger Batterie verbaut, welches sich die Rasberry Foundation aus Kostengründen sparen wollte. Das führt aber dazu, dass der Pi

weiter lesen »

SSH-Befehle

Secure Shell, kurz SSH, ermöglicht authentifizierte und verschlüsselte Verbindungen über ein unsicheres Netzwerk. Die meistverwendeten Linux-Befehle Benutzer zum Administrator hochzustufen sudo -s Linux-Reboot reboot Der Vorgang des Herunterfahrens kann einige Sekunden dauern. Deshalb

weiter lesen »

jDownloader Installation

Was ist jDownloader? JDownloader ist ein kostenloser, Open-Source Downloadmanager welcher das Herunterladen von Dateien so einfach, schnell und automatisiert macht wie es sein sollte. Man kann Downloads pausieren, die Geschwindigkeit limitieren, Archive automatisch

weiter lesen »

Plex Installation

Was ist Plex? Der Plex Media Server ist ein kostenloses Medien-Center, mit dem Sie Ihre Musik-, Film- und Seriensammlung verwalten, aufbereiten und über das Heimnetzwerk oder Internet an nahezu jedes Gerät oder Betriebssystem

weiter lesen »

Navidrome Installation

Was ist Navidrome? Navidrome ist ein webbasierter Server für Musikstreaming, ist Open Source und freie Software. Um Musik vom Navidrome Server zu streamen, kann man einfach die Weboberfläche im Browser öffnen. Es gibt

weiter lesen »

Watchtower Installation

Was ist Watchtower? mit WatchTower kann man seine gesamten Container die sich in Portainer befinden Automatisch aktualisieren. Dies passiert im Hintergrund absolut Automatisch. Je nach Setup mit Email Benachrichtigung über Aktualisierungen. Vorrausetzung ist

weiter lesen »

ioBroker Installation

Was ist ioBroker? Bei ioBroker handelt es sich um eine Software, die unterschiedliche Geräte in deinem Smart Home miteinander vernetzt. Du kannst dir also vorstellen, dass ioBroker der Chef im digitalen Zuhause ist

weiter lesen »

phpMyAdmin Installation

Was ist phpMyAdmin? phpMyAdmin (kurz: pMA) ist eine freie Webanwendung zur Administration von MySQL-Datenbanken und deren Fork MariaDB. Die Software ist in PHP implementiert; daher kommt der Name phpMyAdmin. Die meisten Funktionen können

weiter lesen »

WordPress Installation

Was ist WordPress? WordPress ist eine Webanwendung, mit der Du sehr einfach Websites erstellen und Deine Inhalte online veröffentlichen kannst. Das Content Managements System WordPress gibt es bereits seit 2003. Heutzutage ist WordPress

weiter lesen »

meine Raspberry`s

Pi 4 – 4gb+8gb RAM

Raspberry

TestPi

TestPi auf meinm TestPi läuft ebenfalls das DietPi oS, dieser ist aktuell immer aktiv also „24/7“ online, hier sind folgende Anwendungen installiert Portainer WordPress MariaDB (WordPress) WatchTower IoBrocker phpmyadmin Matomo Paperless meine Raspberry`s

weiter lesen »

OctoPrint Pi

OctoPrint Was ist OctoPrint und wofür brauche ich es? OctoPrint ist eine Serverlösung mit zugehörigen Webinterface zur Steuerung eines 3D-Druckers. Der 3D Drucker wird dabei an den Server per USB angeschlossen. Der Drucker

weiter lesen »

Nextcloud Pi

NextCloud Was ist Nextcloud und wofür brauche ich es? Cloud-Speicher werden zunehmend beliebter. Sie bieten die einfache Möglichkeit, Dokumente und Fotos mit anderen Personen auszutauschen. Nutzer können auf eigene Dateien über unterschiedliche Endgeräte

weiter lesen »

NginX Pi

NginX Pi auf meinem Nginx Raspberry Server läuft ebenfalls das DietPi oS, wobei alle Anwendungen in einem Docker Container untergebracht sind. Die NginX Server steuert die Kommunikation mit dem Internet und leitet Anfragen

weiter lesen »