Ja. Also ich weiß nicht warum. Ich habe alle genauso gemacht wie im Video… Doch wenn ich mich nun in der einen oder der anderen Instanz einlogge, dann loggt er mich bei der anderen aus. Ferner ist die neue Installation nicht clean und ich sehe die Ordner komplett. Was nun? Ich hatte die Installation über Masterclass vorher laufen. Ich habe dann eine zweite hinzugenommen um eine klare Trennung von Unternehmen zu vollziehen.
Hat jemand eine Idee?
Okay. Also ich habe noch einen Hinweis. Bei mir war es tatsächlich eine Mischung von den verschiedenen Instanzen, obwohl ich alles genauso gemacht habe wie im Video. Was habe ich gemacht am Ende um das zu lösen.
Nochmal in Kurz mein Problem:
- Instanz A (ALT)
- Dokumente sind da
- Login funktioniert
- Logge ich mich bei A ein, werde ich bei B ausgeloggt.
- Instanz B (NEU)
- Dokumente aus Instanz A werden angezeigt, das Dokument selbst ist nicht verfügbar
- Login funktioniert mit gleichen Daten wie bei A, allerdings nach erfolgreichen Login werde ich bei A ausgeloggt
Erst einmal habe ich eine klarere Trennung von beiden Instanzen auch in der docker-compose.yml vollzogen in dem ich folgenden Passus zusätzlich angepasst hab:
version: "3.4"
services:
broker:
image: redis:7.0
restart: unless-stopped
volumes:
- redisdata_gmbh:/data # Named Volume (klar getrennt)
db:
image: postgres:16
restart: unless-stopped
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
volumes:
- /volume1/docker/paperless-ngx-GmbH/pgdata:/var/lib/postgresql/data
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on: [db, broker]
ports:
- "8008:8000"
env_file:
- ./docker-compose.env-gmbh
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_CONSUMER_ENABLE_BARCODES: "true"
volumes:
- /volume1/docker/paperless-ngx-GmbH/data:/usr/src/paperless/data
- /volume1/docker/paperless-ngx-GmbH/media:/usr/src/paperless/media
- /volume1/docker/paperless-ngx-GmbH/export:/usr/src/paperless/export
- /volume1/scaninput-gmbh:/usr/src/paperless/consume
volumes:
redisdata_gmbh:
Ich habe hier also ein veränderten Bezug eingestellt. Hier Beispielhaft mit GmbH. Einerseits habe ich die Volumes klar definiert:
- Bei Services
- db - volumes
- webserver
- hat vollpfadige Ordner die jeweils anders sind
- volumes
- und ganz unten noch neu das Volume
Dann habe ich ein bisschen geprüft und “gekillt” in den Instanzen um sicher zu sein, dass alles clean ist und auch wirklich nichts mehr aktiv ist. Ich hatte in meiner NAS noch jeweils 1x alles laufen, obwohl ich über SSH die Instanzen heruntergefahren hatte.
# Was läuft überhaupt aktuell?
docker ps -a --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}\t{{.Ports}}'
# Irgendwas mit Paperless?
docker ps -a --filter "name=paperless" --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}\t{{.Ports}}'
# Falls noch paperless-* Container da sind -> stoppen & löschen:
docker ps -aq --filter "name=paperless" | xargs -r docker stop
docker ps -aq --filter "name=paperless" | xargs -r docker rm
# Lauscht etwas auf 8000/8008?
ss -ltnp | grep -E ':8000|:8008' || echo "nichts auf 8000/8008"
Hier hatte ich dann eine cleanes Ergebnis am Ende. Danach habe ich den Cache und jegliche “Altlasten” entfernt.
# Redis-Cache (Named Volume) der neuen erstellten Instanz löschen – wird neu angelegt, also kein Problem
docker volume rm redisdata_gmbh 2>/dev/null || true
# Neue DB der GmbH-Instanz ZUR SICHERHEIT leeren, damit Postgres frisch initialisiert
rm -rf /volume1/docker/paperless-ngx-GmbH/pgdata/*
# (nur wenn du sicher bist, dass die neue Instanz NICHT die alte ist)
# Die App-/Index-Daten der neuen Instanz zurücksetzen:
rm -rf /volume1/docker/paperless-ngx-GmbH/data/*
# (Dokumente betreffen das nicht – die liegen unter media/documents;
# wenn du komplett leer starten willst:)
rm -rf /volume1/docker/paperless-ngx-GmbH/media/*
mkdir -p /volume1/docker/paperless-ngx-GmbH/media
chown -R 1029:100 /volume1/docker/paperless-ngx-GmbH
Zusätzlich dazu, habe ich noch die Kennzeichnung und eine Cookie-Trennung vollzogen für die Instanz… just to be safe. In der …docker-compose.env-gmbh habe ich eingetragen:
PAPERLESS_APP_TITLE=Paperless GmbH
PAPERLESS_COOKIE_PREFIX=plgmbh
# (und natürlich weiterhin dein eigener PAPERLESS_SECRET_KEY)
Beim TITLE, kann nahezu alles verwendet werden. Auch “Gurkentruppe 2024 e.V. & Co. Kg.“ Sonderzeichen werden hier mit inkludiert.
Dann habe ich die neue Instanz alleine gestartet wie immer und mal geschaut ob die neu erstellte db auch leer ist:
#Erstmal den Container ermitteln
docker ps --format '{{.Names}} {{.Image}}' | grep postgres
#Dann zählen und check
docker exec -it <DB-CONTAINERNAME> psql -U paperless -d paperless -c "select count(*) from documents_document;"
Hier sollte im Idealfall eine “0” stehen. Dann ist´s leer und clean.
Dann habe ich die alte Instanz gestartet und ich konnte beide parallel laufen lassen. Für mich war also ein bisschen mehr Arbeit nötig und es hat mich gestern nicht wie geplant mal schnelle 30 Minuten gekostet, sondern 6 Stunden. Ich bin kein Programmierer oder so, das ist alles selbst gefunden. Und dieses mal sogar nur mit ein bisschen Hilfe von CGPT. 
Hoffe es hilft jemanden, der mal den gleichen Käse wie ich hat.