Paperless-ngx Paperless startet nicht mehr

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
Hallo zusammen,

ich hatte paperless über diese anleitung installiet https://deployn.de/blog/paperless-synology/ hat soweit alles funktioniert.
Jedoch dachte ich es wäre schlauer die ordner anstatt direkt im volume1 zu haben in den docker ordner zu verschieben.
Ich dachte ich kann die einfach in den docker ordner kopieren mit der gleichen struktur wie bei der Anleitung und dann im portainer editor die pfade anpassen.

So hab ich es gemacht und habe dann einen fehler bekommen. Wusste nichts mit dem Fehler anzufangen und hab gedacht, gut dann geht das so nicht und wollte die einträge im editor Rückgängig machen.

Dann habe ich aufeinmal immer den Fehler: "failed to deploy a stack: parsing [data/compose/9/docker-compose.yml]: Top-level object must be a mapping" bekommen.

Gut dachte ich, habe noch einen funktionierenden snapshot mach ich das ganze darüber Rückgängig. Lief auch nicht besonders gut. Portainer stack war komplett leer und wenn ich jetzt versuche den editor zu befüllen analog der Anleitung mit meinen angepassten daten bekomme ich immer den oben stehenden Fehler.

Weiß ehrlich gesagt nicht mehr was ich probieren soll. Frage wäre wie gehe ich am Besten vor um paperless wieder zum Laufen zu bekommen, mit meinen ganzen Einstellungen, eingescannten Dokumenten etc.

Hoffe jemand kann mir Helfen

Vielen Grüße
Martin
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Poste doch mal den genau den Stack, den du deployen willst
 

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
version: '3.6'

networks:
internal:
external: false

services:
broker:
container_name: paperless-redis
image: redis:6.2
# Wenn man lieber 6.0 nutzen möchte
# image: redis:6.0
networks:
- internal
volumes:
# Hier den richtigen Pfad eintragen
- /volume1/docker/paperless/redis:/redis
# - /volume2/paperless/redis:/redis
restart: unless-stopped

db:
container_name: paperless-db
image: postgres:14
# Wenn man lieber die 13 Version von PostgreSQL möchte
# image: postgres:13
# Nicht einfach up- oder downgraden, die Datenbank wird dann nicht mehr laden.
networks:
- internal
restart: unless-stopped
volumes:
# Hier den richtigen Pfad eintragen
- /volume1/docker/paperless/db:/var/lib/postgresql/data
# - /volume2/paperless/db:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
# Hier ein anderes Passwort verwenden
POSTGRES_PASSWORD: password

webserver:
container_name: paperless
image: ghcr.io/paperless-ngx/paperless-ngx:latest
networks:
# Wenn sich der Proxy Manager auf der Synology befindet, sollte hier zusätzlich das Netzwerk davon eingetragen werden, statt einen Port freizugeben.
- internal
restart: unless-stopped
depends_on:
- db
- broker
ports:
# Diesen Teil löschen, wenn der Proxy Manager auf der Synology ist.
# Ansonsten hier einen Port auswählen, der frei ist.
- 8010:8000
# - 8011:8000
# - 8012:8000
healthcheck:
test: ['CMD', 'curl', '-f', 'http://localhost:8000']
interval: 30s
timeout: 10s
retries: 5
volumes:
# Hier die richtigen Pfade eintragen
- /volume1/docker/paperless/data:/usr/src/paperless/data
- /volume1/docker/paperless/media:/usr/src/paperless/media
- /volume1/docker/paperless/export:/usr/src/paperless/export
- /volume1/docker/homes/paperless/Paperless-Inbox:/usr/src/paperless/consume
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_CONSUMER_ENABLE_BARCODES: true
PAPERLESS_DBPASS: password # Das ist das Passwort von oben
USERMAP_UID: 1028 # UserID für den docker Benutzer
USERMAP_GID: 65536 # GruppenID für den docker Benutzer
PAPERLESS_OCR_LANGUAGES: eng deu
# Hier einen zufälligen Key eintragen, wenn man Paperless von Außen erreichbar machen möchte.
PAPERLESS_SECRET_KEY: xxxxxxxxxxxxxxxxxxxxxxxxxx

PAPERLESS_TIME_ZONE: Europe/Berlin
PAPERLESS_ADMIN_USER: user
PAPERLESS_ADMIN_PASSWORD: xxxxxxxxxxxxxxxxxxxxxxxxxxxx
PAPERLESS_URL: meine synology me domain
PAPERLESS_CSRF_TRUSTED_ORIGINS: meine synology me domain
PAPERLESS_OCR_LANGUAGE: deu
# Hier anpassen, wenn man eine andere Ordnerstruktur haben möchte
PAPERLESS_FILENAME_FORMAT: '{created_year}/{correspondent}/{title}/{tag-list}'
PAPERLESS_FILENAME_FORMAT_REMOVE_NONE: True


db-backup:
container_name: paperless-db-backup
# Das Image ggf. an das obere anpassen
image: postgres:14
volumes:
# Hier den richtigen Pfad eintragen
- /volume1/docker/paperless/db-backup:/dump
- /etc/localtime:/etc/localtime:ro
environment:
PGHOST: db
PGDATABASE: paperless
PGUSER: paperless
PGPASSWORD: xzdN19DTd3CxWOuXP6eSyfhB19HRAx # Das ist das Passwort von oben
BACKUP_NUM_KEEP: 10
BACKUP_FREQUENCY: 1d # Alle 7 Tage, kann man anpassen
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
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.050
Punkte für Reaktionen
900
Punkte
204
Müsste es nicht eher /volume1/homes/docker/paperless heißen statt umgekehrt in der Zeile des consume-Folders? /homes liegt vermutlich immer auf der ersten Ebene hinter dem Volume. Ansonsten, das kann ich aber so nicht erkennen, ist die yml durchaus sensitiv, was Einrückungen betrifft, die könntest du auch noch einmal kontrollieren. Es ist da leichter, wenn du das hier als CODE-Block postest statt einfach nur als Text.

Aktuellste Version von PSQL ist übrigens 16.2, ich habe hier eine Anleitung dazu geschrieben, wie man bei Major Updates vorgehen sollte, um das ganze möglichst reibungslos über die Bühne zu bekommen.
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.604
Punkte für Reaktionen
758
Punkte
154
Nee das wär dann doch /volume1/homes/paperless. Er müsste im docker Ordner einen homes Ordner haben.
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Achja richtig. Oh mann. Ich geh wieder ins Bett :ROFLMAO:
 

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
Code:
version: '3.6'

networks:
  internal:
    external: false

services:
  broker:
    container_name: paperless-redis
    image: redis:6.2
    # Wenn man lieber 6.0 nutzen möchte
    # image: redis:6.0
    networks:
      - internal
    volumes:
      # Hier den richtigen Pfad eintragen
      - /volume1/docker/paperless/redis:/redis
    #  - /volume2/paperless/redis:/redis
    restart: unless-stopped

  db:
    container_name: paperless-db
    image: postgres:14
    # Wenn man lieber die 13 Version von PostgreSQL möchte
    # image: postgres:13
    # Nicht einfach up- oder downgraden, die Datenbank wird dann nicht mehr laden.
    networks:
      - internal
    restart: unless-stopped
    volumes:
      # Hier den richtigen Pfad eintragen
      - /volume1/docker/paperless/db:/var/lib/postgresql/data
    #  - /volume2/paperless/db:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: paperless
      POSTGRES_USER: paperless
      # Hier ein anderes Passwort verwenden
      POSTGRES_PASSWORD: xzdN19DTd3CxWOuXP6eSyfhB19HRAx

  webserver:
    container_name: paperless
    image: ghcr.io/paperless-ngx/paperless-ngx:latest
    networks:
      # Wenn sich der Proxy Manager auf der Synology befindet, sollte hier zusätzlich das Netzwerk davon eingetragen werden, statt einen Port freizugeben.
      - internal
    restart: unless-stopped
    depends_on:
      - db
      - broker
    ports:
      # Diesen Teil löschen, wenn der Proxy Manager auf der Synology ist.
      # Ansonsten hier einen Port auswählen, der frei ist.
      - 8010:8000
    # - 8011:8000
    # - 8012:8000
    healthcheck:
      test: ['CMD', 'curl', '-f', 'http://localhost:8000']
      interval: 30s
      timeout: 10s
      retries: 5
    volumes:
      # Hier die richtigen Pfade eintragen
      - /volume1/docker/paperless/data:/usr/src/paperless/data
      - /volume1/docker/paperless/media:/usr/src/paperless/media
      - /volume1/docker/paperless/export:/usr/src/paperless/export
      - /volume1/homes/paperless/Paperless-Inbox:/usr/src/paperless/consume
    environment:
      PAPERLESS_REDIS: redis://broker:6379
      PAPERLESS_DBHOST: db
      PAPERLESS_CONSUMER_ENABLE_BARCODES: true
      PAPERLESS_DBPASS: xzdN19DTd3CxWOuXP6eSyfhB19HRAx # Das ist das Passwort von oben
      USERMAP_UID: 1028 # UserID für den docker Benutzer
      USERMAP_GID: 65536 # GruppenID für den docker Benutzer
      PAPERLESS_OCR_LANGUAGES: eng deu
      # Hier einen zufälligen Key eintragen, wenn man Paperless von Außen erreichbar machen möchte.
      PAPERLESS_SECRET_KEY: password
      
      PAPERLESS_TIME_ZONE: Europe/Berlin
      PAPERLESS_ADMIN_USER: user
      PAPERLESS_ADMIN_PASSWORD: xxxxxxxxxxxxxxxxxxxxxxxxxxx
      PAPERLESS_URL: meine synology me domain
      PAPERLESS_CSRF_TRUSTED_ORIGINS: meine synology me domain
      PAPERLESS_OCR_LANGUAGE: deu
      # Hier anpassen, wenn man eine andere Ordnerstruktur haben möchte
      PAPERLESS_FILENAME_FORMAT: '{created_year}/{correspondent}/{title}/{tag-list}'
      PAPERLESS_FILENAME_FORMAT_REMOVE_NONE: True


  db-backup:
    container_name: paperless-db-backup
    # Das Image ggf. an das obere anpassen
    image: postgres:14
    volumes:
      # Hier den richtigen Pfad eintragen
      - /volume1/docker/paperless/db-backup:/dump
      - /etc/localtime:/etc/localtime:ro
    environment:
      PGHOST: db
      PGDATABASE: paperless
      PGUSER: paperless
      PGPASSWORD: password # Das ist das Passwort von oben
      BACKUP_NUM_KEEP: 10
      BACKUP_FREQUENCY: 1d # Alle 7 Tage, kann man anpassen
    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

Habe mal versucht es als codeblock einzufügen, hoffe es hat geklappt.

Nee das wär dann doch /volume1/homes/paperless. Er müsste im docker Ordner einen homes Ordner haben.
stimmt so, habe einen paperless nutzer und meinen cosume ordner im homes. Beim ändern der Pfade habe ich da fälschlicherweise ein /docker hinzugefügt. Habe ich geändert danke.

Das mit dem PQSL update schaue ich dann vllt danach. Erstmal das Teil wieder zum Laufen bringen ;)

Mit den Einrückungen weiß ich halt nicht, daran hatte ich eigtl nichts geändert :(
Muss ich vllt. die schon vorhandene datei im docker ordner löschen (docker-compose.yml) ?

Vielen Dank an alle
 

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
sieht jemand irgend einen Fehler mit der Einrückung? Oder sonst irgendeine idee?
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Zuletzt bearbeitet von einem Moderator:

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Und was funktioniert nun nicht? Was sagen die Container Logs?
 

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
ich kann den stack nicht deployn da ich immer den gleichen fehler bekomme:

2024/02/19 07:59PM WRN composeplugin/composeplugin.go:162 > docker compose command failed | error="exit status 15" error_output="parsing /data/compose/9/docker-compose.yml: Top-level object must be a mapping\n" output=
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Wie deployst du den? Mit Portainer? Mal in die Logs des Portainer-Containers geschaut oder es mal via CLI versucht?
 

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
ich deploy über portainer und was ich oben gepostet habe war aus den logs von portainer

Ich weiß leider nicht wie es über CLI geht.
1708373640618.png
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Portainer hat da meiner Erfahrung nach gerade Probleme bezüglich des Netzwerks. Ich prüfe das mal und melde mich bei dir!
 

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
könnte ich auch einfach über den container manager von der synology paperless installieren und meine dateien dann importieren? 1708630928675.png
 

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.604
Punkte für Reaktionen
758
Punkte
154
Ja natürlich, musst aber alles mappen wie es bei dem Image steht. Der Container Manager ist nur eine schlechte GUI für Docker.
 

mawolf

Benutzer
Mitglied seit
12. Dez 2023
Beiträge
27
Punkte für Reaktionen
1
Punkte
3
habe jetzt über den container manager ein neues projekt angelegt und meine yaml eingefügt, dass ging und paperless läuft wieder. Portainer meckert nur dass der stack nicht in portainer erstellt wurde und deshalb der zugriff limitiert ist. Aber ich denke damit kann ich leben (kenne mich da nicht aus). Sieht also erstmal so aus als würde es wieder klappen.

danke für die hilfe
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Das ist normal. Portainer kann halt nur die Stacks managen, die er selbst erstellt hat. Problematisch wird es, wenn man da in Portainer was ändern will
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat