Add missing openblas and nltk_data
+ move venv to /opt/paperless
This commit is contained in:
parent
f42e801da2
commit
5d7051ed0c
|
@ -29,12 +29,14 @@ RUN set -euxo pipefail &&\
|
|||
curl -sSLO https://github.com/paperless-ngx/paperless-ngx/releases/download/v${PAPERLESS_VERSION}/paperless-ngx-v${PAPERLESS_VERSION}.tar.xz &&\
|
||||
tar xvJf paperless-ngx-v${PAPERLESS_VERSION}.tar.xz &&\
|
||||
rm paperless-ngx-v${PAPERLESS_VERSION}.tar.xz &&\
|
||||
python3 -m venv venv &&\
|
||||
source venv/bin/activate &&\
|
||||
mv paperless-ngx paperless &&\
|
||||
cd paperless &&\
|
||||
python3 -m venv venv &&\
|
||||
source venv/bin/activate &&\
|
||||
pip --no-cache-dir install -r requirements.txt &&\
|
||||
./src/manage.py collectstatic --no-input &&\
|
||||
mkdir -p /usr/share/nltk_data &&\
|
||||
python3 -c "import nltk; nltk.download('stopwords', download_dir='/usr/share/nltk_data')" &&\
|
||||
rdfind /opt
|
||||
|
||||
FROM python:3.9-alpine
|
||||
|
@ -43,7 +45,7 @@ MAINTAINER [[ .docker.maintainer ]]
|
|||
ENV LANG=[[ .locale.lang ]] \
|
||||
TZ=[[ .locale.tz ]] \
|
||||
PAPERLESS_MODE=all-in-one \
|
||||
PATH=/opt/venv/bin:${PATH} \
|
||||
PATH=/opt/paperless/venv/bin:${PATH} \
|
||||
PAPERLESS_REDIS=redis://127.0.0.1:6379/0 \
|
||||
PAPERLESS_DBENGINE=postgresql \
|
||||
PAPERLESS_DBHOST=127.0.0.1 \
|
||||
|
@ -77,6 +79,7 @@ ENV LANG=[[ .locale.lang ]] \
|
|||
|
||||
ADD https://git.lapiole.org/nomad/base_tools.git#master /
|
||||
COPY --from=builder /opt /opt
|
||||
COPY --from=builder /usr/share/nltk_data /usr/share/nltk_data
|
||||
|
||||
RUN set -euxo pipefail &&\
|
||||
apk --no-cache add \
|
||||
|
@ -100,6 +103,7 @@ RUN set -euxo pipefail &&\
|
|||
libmagic \
|
||||
pngquant \
|
||||
zlib \
|
||||
openblas \
|
||||
supervisor \
|
||||
&&\
|
||||
addgroup --gid 8994 paperless &&\
|
||||
|
|
|
@ -7,7 +7,7 @@ if [ "${PAPERLESS_MODE}" != "all-in-one" -a "${PAPERLESS_MODE}" != "webserver" ]
|
|||
exit 0
|
||||
fi
|
||||
|
||||
source /opt/venv/bin/activate
|
||||
source /opt/paperless/venv/bin/activate
|
||||
echo "Migrating database"
|
||||
cd /opt/paperless/src
|
||||
./manage.py migrate
|
||||
|
|
|
@ -5,7 +5,7 @@ logfile=/dev/stdout
|
|||
logfile_maxbytes=0
|
||||
|
||||
[program:webserver]
|
||||
command=/opt/venv/bin/gunicorn -c /opt/paperless/gunicorn.conf.py --bind=%(ENV_PAPERLESS_BIND_ADDR)s:%(ENV_PAPERLESS_PORT)s paperless.asgi:application
|
||||
command=/opt/paperless/venv/bin/gunicorn -c /opt/paperless/gunicorn.conf.py --bind=%(ENV_PAPERLESS_BIND_ADDR)s:%(ENV_PAPERLESS_PORT)s paperless.asgi:application
|
||||
stdout_logfile=/proc/self/fd/1
|
||||
stdout_logfile_backups=0
|
||||
stdout_logfile_maxbytes=0
|
||||
|
@ -16,7 +16,7 @@ autostart=true
|
|||
autorestart=true
|
||||
|
||||
[program:consumer]
|
||||
command=/opt/venv/bin/python3 manage.py document_consumer
|
||||
command=/opt/paperless/venv/bin/python3 manage.py document_consumer
|
||||
stdout_logfile=/proc/self/fd/1
|
||||
stdout_logfile_backups=0
|
||||
stdout_logfile_maxbytes=0
|
||||
|
@ -27,7 +27,7 @@ autostart=true
|
|||
autorestart=true
|
||||
|
||||
[program:scheduler]
|
||||
command=/opt/venv/bin/celery --app paperless beat --loglevel INFO
|
||||
command=/opt/paperless/venv/bin/celery --app paperless beat --loglevel INFO
|
||||
stdout_logfile=/proc/self/fd/1
|
||||
stdout_logfile_backups=0
|
||||
stdout_logfile_maxbytes=0
|
||||
|
@ -38,7 +38,7 @@ autostart=true
|
|||
autorestart=true
|
||||
|
||||
[program:task-queue]
|
||||
command=/opt/venv/bin/celery --app paperless worker --loglevel INFO
|
||||
command=/opt/paperless/venv/bin/celery --app paperless worker --loglevel INFO
|
||||
stdout_logfile=/proc/self/fd/1
|
||||
stdout_logfile_backups=0
|
||||
stdout_logfile_maxbytes=0
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
set -euo pipefail
|
||||
|
||||
source /opt/venv/bin/activate
|
||||
source /opt/paperless/venv/bin/activate
|
||||
|
||||
cd /opt/paperless/src
|
||||
|
||||
if [ "${PAPERLESS_MODE}" = "all-in-one" ]; then
|
||||
exec supervisor -c /etc/supervisord.conf -n
|
||||
elif [ "${PAPERLESS_MODE}" = "webserver" ]; then
|
||||
exec /opt/venv/bin/gunicorn \
|
||||
exec /opt/paperless/venv/bin/gunicorn \
|
||||
-c /opt/paperless/gunicorn.conf.py \
|
||||
--bind=${PAPERLESS_BIND_ADDR}:${PAPERLESS_PORT} \
|
||||
paperless.asgi:application
|
||||
elif [ "${PAPERLESS_MODE}" = "consumer" ]; then
|
||||
exec /opt/venv/bin/python3 manage.py document_consumer
|
||||
exec /opt/paperless/venv/bin/python3 manage.py document_consumer
|
||||
elif [ "${PAPERLESS_MODE}" = "scheduler" ]; then
|
||||
exec /opt/venv/bin/celery --app paperless beat --loglevel INFO
|
||||
exec /opt/paperless/venv/bin/celery --app paperless beat --loglevel INFO
|
||||
elif [ "${PAPERLESS_MODE}" = "task-queue" ]; then
|
||||
exec /opt/venv/bin/celery --app paperless worker --loglevel INFO
|
||||
exec /opt/paperless/venv/bin/celery --app paperless worker --loglevel INFO
|
||||
fi
|
||||
|
|
|
@ -31,7 +31,7 @@ paperless:
|
|||
webserver:
|
||||
|
||||
# The Docker image to use
|
||||
image: danielberteaud/paperless-ngx:1.17.4-1
|
||||
image: danielberteaud/paperless-ngx:1.17.4-4
|
||||
|
||||
# Env vars to set in the container
|
||||
env: {}
|
||||
|
|
Loading…
Reference in New Issue