Ich muss nochmal nachhaken:
ich habe den Tip mit dockerfile aufgegriffen.
Mein (sehr umfangreiches) Skript hat dann als Teil von paperless-ngx funktioniert.
Dann habe ich auf die neueste Version upgedatet; paperless ist jetzt aktuell, dafür klemmt mein Skript (Python) mit dem Hinweis, dass ein Modul pypaperless nicht gefunden werden konnte.
Mein dockerfile sieht so aus:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 | FROM ghcr.io/paperless-ngx/paperless-ngx:latest
RUN apt-get update && apt-get install -y --no-install-recommends alien libaio1 wget && \
wget http://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.6-basic-19.6.0.0.0-1.x86_64.rpm && \
wget http://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.6-sqlplus-19.6.0.0.0-1.x86_64.rpm && \
alien -i oracle-instantclient19.6-basic-19.6.0.0.0-1.x86_64.rpm && \
alien -i oracle-instantclient19.6-sqlplus-19.6.0.0.0-1.x86_64.rpm
pip3 install oracledb --upgrade
pip3 install PyPDF2 -- upgrade
pip3 install pypaperless --upgrade
pip3 install python-dateutil
# sudo alien -i --scripts oracle-instantclient*.rpm \
# rm -f oracle-instantclient*.rpm
ENV LD_LIBRARY_PATH="/usr/lib/oracle/19.6/client64/lib:${LD_LIBRARY_PATH}"
|
Wie man sieht, soll vor allem der Oracle-Treiber geladen werden und dieses pypapaerless.
Hintergrund ist, dass die in paperless archivierten Dokumente mit einer Oracle-DB abgeglichen werden und dann bestimmte Daten daraus in custom-fields eingetragen werden. Das übernimmt pypaperless.
Das Skript schlägt wegen fehlendem pypaperless-Modul fehl, das ist aber das erste was eingebunden wird. insofern kann ich nicht beurteilen ob auch die anderen Module betroffen sind.
Wenn ich das Skript mit testdaten in Visual Studio Code laufen lasse, dann geht alles.
ich schätze VS Code startet das Skript nicht im Container.
1. Wie kann ich dieses Modul installieren? Es hat ja schon funktioniert, ich weiß nur nicht mehr wie ich das hingekriegt habe
2. Gibt es einen Weg, die Entwicklung des Skriptes über VS Code INNERHALB des Containers zu machen? Auch bisher habe ich immer wieder eigenartige nebeneffekte gehbat.