From 12793cb4f075cebba023caa6c463669aee501c91 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Wed, 30 Aug 2023 20:40:37 +0200 Subject: [PATCH 01/10] do not try to create logging directories --- Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Dockerfile b/Dockerfile index 83dafc0..0139238 100644 --- a/Dockerfile +++ b/Dockerfile @@ -21,6 +21,8 @@ WORKDIR /install RUN sed '/mysqlclient/d' -i requirements.txt RUN sed 's/scipy==1.8.1/scipy==1.11.2/g' -i requirements.txt RUN sed 's/\(\["file_paperless\|\["file_mail\|\["file_celery\)/\["console/g' -i src/paperless/settings.py +RUN sed '/os\.makedirs(LOGGING_DIR, exist_ok=True)/d' -i paperless/settings.py + RUN python3 -m venv env RUN env/bin/pip3 install -r requirements.txt From 61e452ca751ec1307873aaa9e65a3c7d4665c7ae Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Wed, 30 Aug 2023 20:42:56 +0200 Subject: [PATCH 02/10] do not try to create logging directories --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 0139238..1a5239a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -21,7 +21,7 @@ WORKDIR /install RUN sed '/mysqlclient/d' -i requirements.txt RUN sed 's/scipy==1.8.1/scipy==1.11.2/g' -i requirements.txt RUN sed 's/\(\["file_paperless\|\["file_mail\|\["file_celery\)/\["console/g' -i src/paperless/settings.py -RUN sed '/os\.makedirs(LOGGING_DIR, exist_ok=True)/d' -i paperless/settings.py +RUN sed '/os\.makedirs(LOGGING_DIR, exist_ok=True)/d' -i src/paperless/settings.py RUN python3 -m venv env RUN env/bin/pip3 install -r requirements.txt From 406097b7ce0cb11f2e53f6de4e5563e6b576a78f Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Thu, 31 Aug 2023 07:35:49 +0200 Subject: [PATCH 03/10] add volume data dirs --- Dockerfile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Dockerfile b/Dockerfile index 1a5239a..97d276f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -49,6 +49,10 @@ COPY --from=builder /install /var/lib/paperless ADD /rootfs / +RUN mkdir /var/lib/paperless/consume +RUN mkdir /var/lib/paperless/data +RUN mkdir /var/lib/paperless/data + RUN chown -R paperless:paperless /var/lib/paperless ENV HOME /var/lib/paperless From 57b5cb5a85649856ec36f70ab9cc442b7d92fcbb Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Thu, 31 Aug 2023 08:07:39 +0200 Subject: [PATCH 04/10] don't try to create the same dir twice --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 97d276f..792ad83 100644 --- a/Dockerfile +++ b/Dockerfile @@ -51,7 +51,7 @@ ADD /rootfs / RUN mkdir /var/lib/paperless/consume RUN mkdir /var/lib/paperless/data -RUN mkdir /var/lib/paperless/data +RUN mkdir /var/lib/paperless/media RUN chown -R paperless:paperless /var/lib/paperless ENV HOME /var/lib/paperless From 4b7339fcd026041e348d44550abb7407bbc8c247 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Thu, 31 Aug 2023 09:13:19 +0200 Subject: [PATCH 05/10] add unpaper --- Dockerfile | 5 ++++- README.md | 9 ++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 792ad83..610167c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,7 +43,9 @@ RUN apk add --no-cache \ gpg \ tesseract-ocr \ tesseract-ocr-data-deu \ - tesseract-ocr-data-eng + tesseract-ocr-data-eng \ + unpaper \ + font-liberation COPY --from=builder /install /var/lib/paperless @@ -55,6 +57,7 @@ RUN mkdir /var/lib/paperless/media RUN chown -R paperless:paperless /var/lib/paperless ENV HOME /var/lib/paperless +ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=20000 VOLUME ["/var/lib/paperless/media", "/var/lib/paperless/consume", "/var/lib/paperless/data"] EXPOSE 8000 diff --git a/README.md b/README.md index d75ac39..c4eefc2 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,17 @@ [paperless-ngx](https://github.com/paperless-ngx/paperless-ngx) document management system. +# Initialization + +Inside the container run +`/var/lib/paperless/env/bin/python3 /var/lib/paperless/src/manage.py createsuperuser` +and fill in the values. + # Volumes -- `/var/lib/paperless/media/` - `/var/lib/paperless/consume/` +- `/var/lib/paperless/data/` +- `/var/lib/paperless/media/` # Environment Variables From 504f3f9f6f135e2f12cc84d130293d93a4c821b7 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Thu, 31 Aug 2023 10:20:47 +0200 Subject: [PATCH 06/10] add tesseract osd data --- Dockerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 610167c..d678dbc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -44,8 +44,10 @@ RUN apk add --no-cache \ tesseract-ocr \ tesseract-ocr-data-deu \ tesseract-ocr-data-eng \ + tesseract-ocr-data-osd \ unpaper \ - font-liberation + font-liberation \ + poppler-utils COPY --from=builder /install /var/lib/paperless From 1c0370a05126b118b331f11eeaf6ff4799adaa3e Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Tue, 26 Sep 2023 16:57:28 +0200 Subject: [PATCH 07/10] push to 1.17.4 --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index d678dbc..ff6d645 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,9 +9,9 @@ RUN apk add --no-cache \ freetype-dev \ qpdf-dev -ENV VERSION=v1.17.2 +ENV VERSION=v1.17.4 ENV ARCHIVE=paperless-ngx-$VERSION.tar.xz -ENV SHA256_SUM=a4b47e4fc6ff2321a2f616fcfeec2740f1866c555fa5bc9d47da85e31e8c05dd +ENV SHA256_SUM=c05c4c2c59ee09fe130adc9ab9f86ff866c780c14bba3024c26a5078f307dc0b 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 From 99002ada9543e3e3b7595ebfa1981542f1b6b25c Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Thu, 21 Dec 2023 09:59:53 +0100 Subject: [PATCH 08/10] use gitea action runners --- .gitea/workflows/container.yaml | 12 ++++++++++++ .woodpecker.yml | 12 ------------ Dockerfile => Containerfile | 16 ++++++++++------ 3 files changed, 22 insertions(+), 18 deletions(-) create mode 100644 .gitea/workflows/container.yaml delete mode 100644 .woodpecker.yml rename Dockerfile => Containerfile (82%) diff --git a/.gitea/workflows/container.yaml b/.gitea/workflows/container.yaml new file mode 100644 index 0000000..e48b3fd --- /dev/null +++ b/.gitea/workflows/container.yaml @@ -0,0 +1,12 @@ +name: Build Multiarch Container Image +on: [push] +jobs: + call-reusable-workflow: + uses: container/multiarch-build-workflow/.gitea/workflows/build.yaml@main + with: + repository: ${{ gitea.repository }} + ref_name: ${{ gitea.ref_name }} + sha: ${{ gitea.sha }} + registry_url: ${{ secrets.REGISTRY_URL }} + registry_user: ${{ secrets.REGISTRY_USER }} + registry_pw: ${{ secrets.REGISTRY_PW }} diff --git a/.woodpecker.yml b/.woodpecker.yml deleted file mode 100644 index aa99300..0000000 --- a/.woodpecker.yml +++ /dev/null @@ -1,12 +0,0 @@ -pipeline: - publish-docker-image: - image: plugins/kaniko - settings: - repo: docker.io/thallian/paperless-ngx - tags: latest,${CI_COMMIT_SHA:0:8},${CI_COMMIT_TAG=pre} - dockerfile: Dockerfile - username: - from_secret: DOCKER_USER - password: - from_secret: DOCKER_PW - diff --git a/Dockerfile b/Containerfile similarity index 82% rename from Dockerfile rename to Containerfile index ff6d645..23bf58e 100644 --- a/Dockerfile +++ b/Containerfile @@ -1,4 +1,4 @@ -FROM docker.io/alpine:3.18 AS builder +FROM docker.io/alpine:3.19 AS builder RUN apk add --no-cache \ python3-dev \ @@ -7,11 +7,15 @@ RUN apk add --no-cache \ musl-dev \ libpq-dev \ freetype-dev \ - qpdf-dev + qpdf-dev \ + gfortran \ + cmake \ + openblas-dev \ + linux-headers -ENV VERSION=v1.17.4 +ENV VERSION=v2.1.3 ENV ARCHIVE=paperless-ngx-$VERSION.tar.xz -ENV SHA256_SUM=c05c4c2c59ee09fe130adc9ab9f86ff866c780c14bba3024c26a5078f307dc0b +ENV SHA256_SUM=a27fd03806d6ee45c389e89e5074baddb21002c82bcf867fed2d81e36aa83d6e 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 @@ -19,7 +23,7 @@ RUN tar xf $ARCHIVE -C /install --strip 1 WORKDIR /install RUN sed '/mysqlclient/d' -i requirements.txt -RUN sed 's/scipy==1.8.1/scipy==1.11.2/g' -i requirements.txt +# RUN sed 's/scipy==1.8.1/scipy==1.11.2/g' -i requirements.txt RUN sed 's/\(\["file_paperless\|\["file_mail\|\["file_celery\)/\["console/g' -i src/paperless/settings.py RUN sed '/os\.makedirs(LOGGING_DIR, exist_ok=True)/d' -i src/paperless/settings.py @@ -27,7 +31,7 @@ RUN python3 -m venv env RUN env/bin/pip3 install -r requirements.txt -FROM docker.io/thallian/alpine-s6:3.18-3.1.5.0 +FROM docker.io/thallian/alpine-s6:3.19-3.1.6.2 RUN addgroup -g 2222 paperless RUN adduser -h /var/lib/paperless -u 2222 -D -G paperless paperless From 5682793baba01a0411a9d9325c38ea159e8abea1 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Thu, 21 Dec 2023 14:47:29 +0100 Subject: [PATCH 09/10] need libffi-dev for aarch64 building --- Containerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Containerfile b/Containerfile index 23bf58e..d69fcaa 100644 --- a/Containerfile +++ b/Containerfile @@ -11,6 +11,7 @@ RUN apk add --no-cache \ gfortran \ cmake \ openblas-dev \ + libffi-dev \ linux-headers ENV VERSION=v2.1.3 From 0320b0c85a50abf6550bba0696e4c16fecbdcad3 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Thu, 28 Mar 2024 14:51:33 +0100 Subject: [PATCH 10/10] push to 2.6.3 --- Containerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Containerfile b/Containerfile index d69fcaa..70e8b07 100644 --- a/Containerfile +++ b/Containerfile @@ -14,9 +14,9 @@ RUN apk add --no-cache \ libffi-dev \ linux-headers -ENV VERSION=v2.1.3 +ENV VERSION=v2.6.3 ENV ARCHIVE=paperless-ngx-$VERSION.tar.xz -ENV SHA256_SUM=a27fd03806d6ee45c389e89e5074baddb21002c82bcf867fed2d81e36aa83d6e +ENV SHA256_SUM=0c74c7d6ba35b576c47481021322d7f5e8847f89c489eed47f5399588aad6d19 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