From e797295b8245f8faeec45cd0801a90abc450a24c Mon Sep 17 00:00:00 2001 From: Trenton H <797416+stumpylog@users.noreply.github.com> Date: Tue, 5 Sep 2023 13:15:24 -0700 Subject: [PATCH] Drops the building of armv7 and removes most stuff the image does for it --- .github/workflows/ci.yml | 4 +++- Dockerfile | 9 +++------ docs/faq.md | 16 ++++++++++------ 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 15fc2279a..275d2a933 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -325,6 +325,8 @@ jobs: - name: Set up QEMU uses: docker/setup-qemu-action@v2 + with: + platforms: arm64 - name: Login to Github Container Registry uses: docker/login-action@v2 @@ -355,7 +357,7 @@ jobs: with: context: . file: ./Dockerfile - platforms: linux/amd64,linux/arm/v7,linux/arm64 + platforms: linux/amd64,linux/arm64 push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.docker-meta.outputs.tags }} labels: ${{ steps.docker-meta.outputs.labels }} diff --git a/Dockerfile b/Dockerfile index c96c957c8..a9629d519 100644 --- a/Dockerfile +++ b/Dockerfile @@ -192,12 +192,6 @@ RUN set -eux \ && cp ./jbig2enc/${JBIG2ENC_VERSION}/${TARGETARCH}${TARGETVARIANT}/jbig2 /usr/local/bin/ \ && cp ./jbig2enc/${JBIG2ENC_VERSION}/${TARGETARCH}${TARGETVARIANT}/libjbig2enc* /usr/local/lib/ \ && chmod a+x /usr/local/bin/jbig2 \ - && echo "Installing pikepdf and dependencies" \ - && python3 -m pip install --no-cache-dir ./pikepdf/${PIKEPDF_VERSION}/${TARGETARCH}${TARGETVARIANT}/*.whl \ - && python3 -m pip list \ - && echo "Installing psycopg2" \ - && python3 -m pip install --no-cache-dir ./psycopg2/${PSYCOPG2_VERSION}/${TARGETARCH}${TARGETVARIANT}/psycopg2*.whl \ - && python3 -m pip list \ && echo "Cleaning up image layer" \ && cd ../ \ && rm -rf paperless-ngx \ @@ -214,6 +208,9 @@ COPY --from=pipenv-base /usr/src/pipenv/requirements.txt ./ ARG BUILD_PACKAGES="\ build-essential \ git \ + # https://www.psycopg.org/docs/install.html#prerequisites + libpq-dev \ + # https://github.com/PyMySQL/mysqlclient#linux default-libmysqlclient-dev \ pkg-config" diff --git a/docs/faq.md b/docs/faq.md index 73ed87bb6..0abe350cb 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -12,7 +12,7 @@ open to collaboration in the form of PRs, ideas etc. ## _I'm using docker. Where are my documents?_ -**A:** Your documents are stored inside the docker volume +**A:** By default, your documents are stored inside the docker volume `paperless_media`. Docker manages this volume automatically for you. It is a persistent storage and will persist as long as you don't explicitly delete it. The actual location depends on your host operating @@ -82,7 +82,7 @@ has to do much less work to serve the data. ## _How do I install paperless-ngx on Raspberry Pi?_ -**A:** Docker images are available for armv7 and arm64 hardware, so just +**A:** Docker images are available for arm64 hardware, so just follow the [docker-compose instructions](https://docs.paperless-ngx.com/setup/#installation). Apart from more required disk space compared to a bare metal installation, docker comes with close to zero overhead, even on Raspberry Pi. @@ -92,6 +92,13 @@ the python requirements do not have precompiled packages for ARM / ARM64. Installation of these will require additional development libraries and compilation will take a long time. +!!! note + + For ARMv7 systems, paperless may still function, but it could require + modifications to the Dockerfile (if using Docker) or additional + tools for installing bare metal. It is suggested to upgrade to arm64 + instead. + ## _How do I run this on Unraid?_ **A:** Paperless-ngx is available as [community @@ -103,10 +110,7 @@ Fahrer](https://github.com/Tooa) created a container template for that. **A:** I honestly don't know! As for all other devices that might be able to run paperless, you're a bit on your own. If you can't run the docker image, the documentation has instructions for bare metal -installs. I'm running paperless on an i3 processor from 2015 or so. -This is also what I use to test new releases with. Apart from that, I -also have a Raspberry Pi, which I occasionally build the image on and -see if it works. +installs. ## _How do I proxy this with NGINX?_