HAllo Bernd,
danke erstmal für die Unterstützung. Anleitung bezog sich halt auf Container-Manager direkt. Und so wollte ich sicherstellen nicht irgendwo einen Fehler einzubauen.
Zudem will man sich ja auch weiterentwickeln und was lernen.
Für mich ist es letztlich egal wo der Scriptordner liegt. ICh ging davon aus, diesen auf dem Host mit ins Projekt zu legen, um eine Sicherung später einfacher zu haben.
Script habe ich wie gesagt einfach übernommen.
Zu dem Vorschlag. Container frisch gestartet
sudo docker-compose down
sudo docker-compose up -d
exit
neu angemeldet:
ssh daniel@192.168.168.11
Ich lande hier im Homeverzeichnis des Benutzers (Drive,Photos etc.)
Die Befehle liefern folgendes zurück: (auch nicht mit sudo)
ls -la scripts/
ls: cannot access 'scripts/': No such file or directory
ls -la /usr/src/paperless/scripts/
ls: cannot access '/usr/src/paperless/scripts/': No such file or directory
Ich würde hieraus schließen, dass es diesen nicht gibt oder dieser wo anderes liegt. auf dem Host finde ich folgendes.
Daniel@ds923plus:/volume1/docker$ cd /volume1/docker/paperless-ngx/
Daniel@ds923plus:/volume1/docker/paperless-ngx$ ls
consume data db docker-compose.env docker-compose.yml duplex export media redis scripts
Daniel@ds923plus:/volume1/docker/paperless-ngx$ cd /volume1/docker/paperless-ngx/scripts/
Daniel@ds923plus:/volume1/docker/paperless-ngx/scripts$ ls
pre-consume.sh remove-blank-pages.sh
Daniel@ds923plus:/volume1/docker/paperless-ngx/scripts$
Wenn ich wie vorgeschlagen nach /usr/scr suche findet er nichts.
Daniel@ds923plus:/volume1/docker/paperless-ngx/scripts$ cd /usr/
Daniel@ds923plus:/usr$ ls
bin etc include lib lib32 lib64 libexec local sbin share syno
Daniel@ds923plus:/usr$ cd /usr/scr
-sh: cd: /usr/scr: No such file or directory
Daniel@ds923plus:/usr$
Muss ich mich hier anderes verbinden? → Selbst gegoogelt (Ja) sudo docker ps -a
Daniel@ds923plus:~$ sudo docker exec -it 67ddd4ca6dc2 /bin/bash
root@67ddd4ca6dc2:/usr/src/paperless/src# ls
docker documents locale manage.py paperless paperless_mail paperless_tesseract paperless_text paperless_tika requirements.txt setup.cfg
root@67ddd4ca6dc2:/usr/src/paperless/src# ls -la scripts/
ls: cannot access 'scripts/': No such file or directory
root@67ddd4ca6dc2:/usr/src/paperless/src# ls -la /usr/src/paperless/scripts/
total 8
drwxr-xr-x 1 paperless users 70 Apr 17 01:10 .
drwxr-xr-x 1 paperless 1000 120 Apr 17 10:57 ..
-rwxr-xr-x 1 paperless users 73 Apr 17 01:09 pre-consume.sh
-rwxr-xr-x 1 paperless users 728 Apr 17 01:08 remove-blank-pages.sh
root@67ddd4ca6dc2:/usr/src/paperless/src#
So steht es jetzt auch im yml. Problem besteht weiter. Aber hey ich lerne einiges über die Funktionen im detail, was mir so nicht klar war.
Ich habe paralel mal ne KI als Sparingpartner genutzt und div. Dinge ausgelesen Vielleicht gibt das noch ansätze.
Demnach sieht es so aus, als ob die lese Berechtigungen richtig sind. Ausgabe Zeigt
-rwxr-xr-x 1 Daniel users 73 Apr 17 03:09 /volume1/docker/paperless-ngx/scripts/pre-consume.sh
Container laufen nach dem Start normal
sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
83f27b314d77 ghcr.io/paperless-ngx/paperless-ngx:2.14.7 "/sbin/docker-entryp…" 10 minutes ago Up 5 minutes (healthy) 0.0.0.0:8888->8000/tcp, :::8888->8000/tcp paperless-ngx
847cedd2248f postgres:17.4 "docker-entrypoint.s…" 10 minutes ago Up 5 minutes 5432/tcp paperless-ngx-db
bdd2f0aad2c9 redis:7.4.2 "docker-entrypoint.s…" 10 minutes ago Up 5 minutes 6379/tcp paperless-ngx-redis
72ffe4b8de05 apache/tika:2.9.2.1 "/bin/sh -c 'exec ja…" 10 minutes ago Up 5 minutes 9998/tcp paperless-ngx-tika
6384fa89353f gotenberg/gotenberg:8 "/usr/bin/tini -- go…" 10 minutes ago Up 5 minutes 3000/tcp paperless-ngx-gotenberg
56048d022c46 05f0258f226c "sh -c 'while true; …" 11 days ago Up 21 hours synology_docviewer_2
d0829b8553e3 05f0258f226c "sh -c 'while true; …" 11 days ago Up 21 hours synology_docviewer_1
Offenbar aber als root
/volume1/docker/paperless-ngx$ sudo docker exec -it paperless-ngx id
uid=0(root) gid=0(root) groups=0(root)
Wobei der Benutzer Daniel (1026) auch Admin berechtigungen hat.
Hatte auch zwichsenzeitlich den Besitz auf den root angepasst (aber wegen gleichem fehler wieder geändert)
sudo chown 1000 /volume1/docker/paperless-ngx/scripts/Name der schripte.sh
Die von der KI Vorgeschlagegene Befehler sagen aber Docker kenne keinen Daniel
/volume1/docker/paperless-ngx$ sudo docker exec -it paperless-ngx id -u Daniel
id: ‘Daniel’: no such user
:/volume1/docker/paperless-ngx$ sudo docker exec -it paperless-ngx id -g Daniel
id: ‘Daniel’: no such user
Auszug aus der envoirment
/volume1/docker/paperless-ngx$ sudo docker exec -it paperless-ngx env
PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=83f27b314d77
TERM=xterm
PAPERLESS_OCR_LANGUAGE=deu+eng
PAPERLESS_TIKA_ENDPOINT=http://tika:9998
PAPERLESS_DBPASS=*****
PAPERLESS_ADMIN_USER=******
PAPERLESS_TIME_ZONE=Europe/Berlin
PAPERLESS_DBHOST=db
PAPERLESS_TIKA_ENABLED=1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT=http://gotenberg:3000
PAPERLESS_PRE_CONSUME_SCRIPT=/scripts/pre-consume.sh
PAPERLESS_ADMIN_PASSWORD=*****
PAPERLESS_SECRET_KEY=**********
PAPERLESS_REDIS=redis://broker:6379
PAPERLESS_DBNAME=paperlessdb
USERMAP_GID=100
PAPERLESS_DBUSER=*******
USERMAP_UID=1026
LANG=C.UTF-8
GPG_KEY=7169605F62C751356D054A26A821E680E5FA6305
PYTHON_VERSION=3.12.8
PYTHON_SHA256=c909157bb25ec114e5869124cc2a9c4a4d4c1e957ca4ff553f1edc692101154e
PYTHONDONTWRITEBYTECODE=1
PYTHONUNBUFFERED=1
PYTHONWARNINGS=ignore:::django.http.response:517
PNGX_CONTAINERIZED=1
HOME=/root
Kleine ergänzung hatte gesehen das in der Variable noch
PAPERLESS_PRE_CONSUME_SCRIPT: /scripts/pre-consume.sh
Stand. So zumindest auch die Fehlermeldung. Habe dies nun angepasst:
PAPERLESS_PRE_CONSUME_SCRIPT: /usr/src/paperless/scripts/pre-consume.sh
Erhalte aber immer noch den Fehler:
Scan_2504171011117.pdf: Error while executing pre-consume script: [Errno 2] No such file or directory: ‘/usr/src/paperless/scripts/pre-consume.sh’
Aktuelle YML
services:
broker:
image: redis:7.4.2
container_name: paperless-ngx-redis
restart: unless-stopped
volumes:
- /volume1/docker/paperless-ngx/redis:/data
db:
image: postgres:17.4
container_name: paperless-ngx-db
restart: unless-stopped
volumes:
- /volume1/docker/paperless-ngx/db:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperlessdb
POSTGRES_USER: *****
POSTGRES_PASSWORD: *****
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:2.14.7
container_name: paperless-ngx
restart: unless-stopped
depends_on:
- db
- broker
- gotenberg
- tika
ports:
- "8888:8000"
volumes:
- /volume1/docker/paperless-ngx/data:/usr/src/paperless/data
- /volume1/docker/paperless-ngx/media:/usr/src/paperless/media
- /volume1/docker/paperless-ngx/export:/usr/src/paperless/export
- /volume1/docker/paperless-ngx/consume:/usr/src/paperless/consume
- /volume1/docker/paperless-ngx/scripts:/usr/src/paperless/scripts:ro
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
PAPERLESS_PRE_CONSUME_SCRIPT: /usr/src/paperless/scripts/pre-consume.sh
gotenberg:
image: docker.io/gotenberg/gotenberg:8
container_name: paperless-ngx-gotenberg
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:2.9.2.1
container_name: paperless-ngx-tika
restart: unless-stopped