2025-04-23 19:03:25 +02:00
|
|
|
FROM docker.io/alpine:3.21 AS builder
|
2023-08-30 18:24:33 +02:00
|
|
|
|
|
|
|
RUN apk add --no-cache \
|
|
|
|
python3-dev \
|
|
|
|
make \
|
|
|
|
g++ \
|
|
|
|
musl-dev \
|
|
|
|
libpq-dev \
|
|
|
|
freetype-dev \
|
2023-12-21 09:59:53 +01:00
|
|
|
qpdf-dev \
|
|
|
|
gfortran \
|
|
|
|
cmake \
|
|
|
|
openblas-dev \
|
2023-12-21 14:47:29 +01:00
|
|
|
libffi-dev \
|
2025-04-23 19:37:15 +02:00
|
|
|
linux-headers \
|
|
|
|
grep \
|
|
|
|
findutils
|
2023-08-30 18:24:33 +02:00
|
|
|
|
2025-06-06 11:05:27 +02:00
|
|
|
ENV VERSION=v2.16.3
|
2023-08-30 18:24:33 +02:00
|
|
|
ENV ARCHIVE=paperless-ngx-$VERSION.tar.xz
|
2025-06-06 11:05:27 +02:00
|
|
|
ENV SHA256_SUM=8d26e989555b35929208b3693ff27e16d0e2eb1db8cbb5630c4766b8be349a00
|
2023-08-30 18:24:33 +02:00
|
|
|
RUN wget https://github.com/paperless-ngx/paperless-ngx/releases/download/$VERSION/$ARCHIVE
|
|
|
|
RUN echo "$SHA256_SUM $ARCHIVE" | sha256sum -c - || exit 1
|
|
|
|
RUN mkdir -p /install
|
|
|
|
RUN tar xf $ARCHIVE -C /install --strip 1
|
|
|
|
|
|
|
|
WORKDIR /install
|
|
|
|
RUN sed '/mysqlclient/d' -i requirements.txt
|
2023-12-21 09:59:53 +01:00
|
|
|
# RUN sed 's/scipy==1.8.1/scipy==1.11.2/g' -i requirements.txt
|
2023-08-30 19:59:23 +02:00
|
|
|
RUN sed 's/\(\["file_paperless\|\["file_mail\|\["file_celery\)/\["console/g' -i src/paperless/settings.py
|
2023-08-30 20:42:56 +02:00
|
|
|
RUN sed '/os\.makedirs(LOGGING_DIR, exist_ok=True)/d' -i src/paperless/settings.py
|
2023-08-30 20:40:37 +02:00
|
|
|
|
2023-08-30 18:24:33 +02:00
|
|
|
RUN python3 -m venv env
|
|
|
|
RUN env/bin/pip3 install -r requirements.txt
|
2025-04-24 08:06:42 +02:00
|
|
|
RUN env/bin/pip3 uninstall -y psycopg psycopg-binary psycopg-c
|
|
|
|
RUN env/bin/pip3 install psycopg
|
2023-08-30 18:24:33 +02:00
|
|
|
|
2025-04-23 19:37:15 +02:00
|
|
|
RUN find /install -type f -exec grep -lZ "^#!/install/env/bin/python3" {} + | xargs -0 -I {} sed -i "1s|^#!/install/env/bin/python3|#!/var/lib/paperless/env/bin/python|" {}
|
2023-08-30 18:24:33 +02:00
|
|
|
|
2025-04-23 19:03:25 +02:00
|
|
|
FROM docker.io/thallian/alpine-s6:3.21-3.2.0.2
|
2023-08-30 18:24:33 +02:00
|
|
|
|
|
|
|
RUN addgroup -g 2222 paperless
|
|
|
|
RUN adduser -h /var/lib/paperless -u 2222 -D -G paperless paperless
|
|
|
|
|
|
|
|
RUN apk add --no-cache \
|
|
|
|
python3 \
|
|
|
|
libpq \
|
|
|
|
freetype \
|
|
|
|
qpdf \
|
|
|
|
imagemagick \
|
|
|
|
ghostscript \
|
|
|
|
libmagic \
|
|
|
|
gpg \
|
|
|
|
tesseract-ocr \
|
|
|
|
tesseract-ocr-data-deu \
|
2023-08-31 09:13:19 +02:00
|
|
|
tesseract-ocr-data-eng \
|
2023-08-31 10:20:47 +02:00
|
|
|
tesseract-ocr-data-osd \
|
2023-08-31 09:13:19 +02:00
|
|
|
unpaper \
|
2023-08-31 10:20:47 +02:00
|
|
|
font-liberation \
|
2024-04-13 20:00:49 +02:00
|
|
|
poppler-utils \
|
|
|
|
openblas
|
2023-08-30 18:24:33 +02:00
|
|
|
|
|
|
|
COPY --from=builder /install /var/lib/paperless
|
|
|
|
|
|
|
|
ADD /rootfs /
|
|
|
|
|
2023-08-31 07:35:49 +02:00
|
|
|
RUN mkdir /var/lib/paperless/consume
|
|
|
|
RUN mkdir /var/lib/paperless/data
|
2023-08-31 08:07:39 +02:00
|
|
|
RUN mkdir /var/lib/paperless/media
|
2023-08-31 07:35:49 +02:00
|
|
|
|
2023-08-30 18:24:33 +02:00
|
|
|
RUN chown -R paperless:paperless /var/lib/paperless
|
|
|
|
ENV HOME /var/lib/paperless
|
2023-08-31 09:13:19 +02:00
|
|
|
ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=20000
|
2023-08-30 18:24:33 +02:00
|
|
|
|
2025-04-23 19:37:15 +02:00
|
|
|
ENV GRANIAN_HOST=::
|
|
|
|
ENV GRANIAN_PORT=8000
|
|
|
|
ENV GRANIAN_WORKERS=1
|
|
|
|
|
2023-08-30 18:24:33 +02:00
|
|
|
VOLUME ["/var/lib/paperless/media", "/var/lib/paperless/consume", "/var/lib/paperless/data"]
|
|
|
|
EXPOSE 8000
|