Proxmox PaperlessNGX Dateipfade der Dokumente

Hallo zusammen,

ich habe testweise PaperlessNGX als LXC-Container in Proxmox installiert und kann per FTP auf das Dateisystem zugreifen. Nun wollte ich den Ordner finden, in dem Paperless die Dokumente entsprechend des Speicherpfads ablegt. Ich habe zwei Dokumente in Paperless mit einem Speicherpfad und verschiedenen Tags angelegt, aber diese tauchen nicht im entsprechenden Verzeichnis auf. Der Consume-Ordner funktioniert jedoch einwandfrei.

Konfiguration:

# Docker Compose file for running paperless from the docker container registry.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
#   as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8000.
#
# In addition to that, this Docker Compose file adds the following optional
# configurations:
#
# - Instead of SQLite (default), PostgreSQL is used as the database server.
# - Apache Tika and Gotenberg servers are started with paperless and paperless
#   is configured to use these services. These provide support for consuming
#   Office documents (Word, Excel, Power Point and their LibreOffice counter-
#   parts.
#
# To install and update paperless with this file, do the following:
#
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
#   and '.env' into a folder.
# - Run 'docker compose pull'.
# - Run 'docker compose run --rm webserver createsuperuser' to create a user.
# - Run 'docker compose up -d'.
#
# For more extensive installation and update instructions, refer to the
# documentation.

services:
  broker:
    image: docker.io/library/redis:7
    restart: unless-stopped
    volumes:
      - redisdata:/data

  db:
    image: docker.io/library/postgres:16
    restart: unless-stopped
    volumes:
      - pgdata:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: paperless
      POSTGRES_USER: paperless
      POSTGRES_PASSWORD: paperless

  webserver:
    image: ghcr.io/paperless-ngx/paperless-ngx:latest
    restart: unless-stopped
    depends_on:
      - db
      - broker
      - gotenberg
      - tika
    ports:
      - "8000:8000"
    volumes:
      - data:/usr/src/paperless/data
      - media:/usr/src/paperless/media
      - ./export:/usr/src/paperless/export
      - /HDDdocs/paperless/paperless-ngx/consume:/usr/src/paperless/consume
    env_file: docker-compose.env
    environment:
      PAPERLESS_REDIS: redis://broker:6379
      PAPERLESS_DBHOST: db
      PAPERLESS_TIKA_ENABLED: 1
      PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
      PAPERLESS_TIKA_ENDPOINT: http://tika:9998

  gotenberg:
    image: docker.io/gotenberg/gotenberg:8.7
    restart: unless-stopped

    # The gotenberg chromium route is used to convert .eml files. We do not
    # want to allow external content like tracking pixels or even javascript.
    command:
      - "gotenberg"
      - "--chromium-disable-javascript=true"
      - "--chromium-allow-list=file:///tmp/.*"

  tika:
    image: docker.io/apache/tika:latest
    restart: unless-stopped

volumes:
  data:
  media:
  pgdata:
  redisdata:

Das Verzeichnis in dem ich die Dateien vermute ist aber leer:
image

Ich vermute, dass bei der Konfiguration etwas schiefgelaufen ist. Hat jemand eine Idee, woran das liegen könnte?

Vielen Dank und viele Grüße,
Domi

Also oben zeigst du eine docker-compose.yml. Ich vermute mal du hast in dem LXC einen Docker laufen. Bist du sicher, dass du über FTP auf den Docker Container zugreifst?

ja dann ists ein Docker :wink:

Ja, FTP sollte passen da der Consume Ordner funktioniert, ich habe auch die Konfig über WINSCP herauskopiert.

Ich würde eher sagen du greifst mit FTP auf den LXC zu und nicht auf den Container. Laut der oben gezeigten Konfiguration wird vom Paperless-Container nur der Port 8000 nach außen geleitet.

hmm, so sieht das root-Verzeichnis aus:


Im Ordner HDDdocs finde ich den consume-Ordner. Vermutlich weil der auch gemountet ist, oder?

Hallo ich hab das Programm auf einer Synology mit Docker laufen.
Die eingescannten Daten sind bei mir unter volume1/docker/paperless-ngx/media/documents/archive
und dann entsprechend weiter was du im System oder der einzelnen eingescannten Datei hinterlegt hast.
So ist es zumindest bei mir

Nein, das was du zeigst ist die Dateistruktur deines LXC-Containers. In diesem Container läuft ein Docker und in diesem unter anderem ein paperless Container. Gib mal auf der Konsole deines LXC im Proxmox docker container ls, dann solltest du eigentlich alle Container sehen, die im Docker laufen.

Moin,

wie, per Helferskript, von ttack

Oder irgendwie selbst zusammengebastelt, denn für mich ist es nicht klar wie jetzt, LXC oder Docker, oder LXC und Docker.

das ist der Teil, in dem Du die Volumes für paperless-ngx definierst, Du solltest eigentlich im LXC jetzt

/data
/media
/.export
/HDDdocs/paperless-ngx/consume

haben, zur Erklärung, in Docker wird das so gelesen

  • - data = das Verzeichnis auf dem Host, also Dein LXC, da Du das Verzeichnis aber nicht vorher angelegt hast und im yaml auch kein / davor ist, werden die Verzeichnisse im Docker angelegt, daher kommst Du nicht so einfach drauf
  • das nach dem : ist der Pfad im Container

Du hast das nur für consume korrekt gemacht!

- /HDDdocs/paperless/paperless-ngx/consume:/usr/src/paperless/consume

Wenn Du das für den Rest auch so machen willst ist es so korrekt

volumes:
      - /HDDdocs/paperless/paperless-ngx/data:/usr/src/paperless/data
      - /HDDdocs/paperless/paperless-ngx/media:/usr/src/paperless/media
      - /HDDdocs/paperless/paperless-ngx/.export:/usr/src/paperless/export
      - /HDDdocs/paperless/paperless-ngx/consume:/usr/src/paperless/consume

VG
Bernd

Hmm, sagt mir nichts :sweat_smile:
Mit Port 8000 verbindet WINSCP übrigens nicht…

root@PaperlessNGX:~# docker container ls 
CONTAINER ID   IMAGE                                        COMMAND                  CREATED        STATUS                    PORTS                                       NAMES
b752475cc786   ghcr.io/paperless-ngx/paperless-ngx:latest   "/sbin/docker-entryp…"   45 hours ago   Up 50 minutes (healthy)   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp   paperless-webserver-1
e6c8efcae008   apache/tika:latest                           "/bin/sh -c 'exec ja…"   45 hours ago   Up 50 minutes             9998/tcp                                    paperless-tika-1
614643eec83a   redis:7                                      "docker-entrypoint.s…"   45 hours ago   Up 50 minutes             6379/tcp                                    paperless-broker-1
d542ffd608c7   gotenberg/gotenberg:8.7                      "/usr/bin/tini -- go…"   45 hours ago   Up 50 minutes             3000/tcp                                    paperless-gotenberg-1
6bfd10a02ffc   postgres:16                                  "docker-entrypoint.s…"   45 hours ago   Up 50 minutes             5432/tcp                                    paperless-db-1

Ok, dann gib mal jetzt auf der LXC Konsole folgendes ein:
docker exec -it paperless_webserver_1 ls /usr/src/paperless/media/documents/archive

Alles in einer Zeile!

ok, das muss ich mir mal in Ruhe ansehen.
Habe mich an einem Video von " Andres Hardware" entlanggehangelt.
Vllt. versuch ichs nochmal mit dem Skript von ttack.

Danke!

Error: No such container: paperless_webserver_1

Sorry, ich meinte:
docker exec -it paperless-webserver-1 ls /usr/src/paperless/media/documents/archive

habs auch gerade gesehen. Da sind meine Dokumente …
Hast du jetzt eine Idee wie ich per ftp drauf komme?

Du musst aber die Anmerkung von @dp20eic unbedingt beachten!

Ok, Ich versuche mir das jetzt zusammenzubauen und melde mich nochmal!
Schonmal Danke euch!!!

Moin,

genau das habe ich Dir versucht zu erklären, Du hast alle Verzeichnisse, außer consume nur innerhalb vom Docker Container, und ein Docker Container ist meistens nicht dazu ausgelegt FTP, oder ssh zu machen, weil gefährlich, daher ist das meist im Container nicht vorhanden.

Entweder Du installierst Dir das native in einen LXC oder wenn Du von außen auf die Verzeichnisse zugreifen willst, dann mach das so wie für den consume Ordner, leg dir in dem /HDDdocs/... Unterverzeichnisse an und pass die yaml Datei an und lass das ganze noch mal laufen.

VG
Bernd

Funktioniert leider nicht.
Habe jetzt die .yml angepasst und die Verzeichnisse erstellt, Neustart.

 ports:
      - "8000:8000"
    volumes:
      - /HDDdocs/paperless/paperless-ngx/data:/usr/src/paperless/data
      - /HDDdocs/paperless/paperless-ngx/media:/usr/src/paperless/media
      - /HDDdocs/paperless/paperless-ngx/.export:/usr/src/paperless/export
      - /HDDdocs/paperless/paperless-ngx/consume:/usr/src/paperless/consume
    env_file: docker-compose.env

Kommt nichts an.
Ich versuchs mal mit dem anderen Skript, sollte sowieso nur ein Test sein…

VG

Moin,

nicht Neustart, nach der Änderung der yaml Datei, weiß der Docker Container nichts von der Änderung, das muss einmal neu deployt werden.
Dazu muss man wohl erst den/die Docker Container stoppen, dann neu deployen und dann wieder starten.

VG
Bernd

1 „Gefällt mir“

docker-compose down && docker-compose up -d sollte reichen.

1 „Gefällt mir“