From 0f898ddf4a46c0f07299fd516c2511fc636b2c08 Mon Sep 17 00:00:00 2001 From: Daniel Schulz Date: Tue, 27 Jun 2023 00:51:55 +0200 Subject: [PATCH] unify raspi and normal build again --- .github/workflows/build-docker.yml | 8 +------- Dockerfile | 6 +++++- Dockerfile-raspi | 33 ------------------------------ 3 files changed, 6 insertions(+), 41 deletions(-) delete mode 100644 Dockerfile-raspi diff --git a/.github/workflows/build-docker.yml b/.github/workflows/build-docker.yml index 534c2f29..de94990a 100644 --- a/.github/workflows/build-docker.yml +++ b/.github/workflows/build-docker.yml @@ -17,15 +17,9 @@ jobs: # Standard build config - name: Standard dockerfile: Dockerfile - platforms: linux/amd64,linux/arm64 + platforms: linux/amd64,linux/arm64,linux/arm/v7 suffix: "" continue-on-error: false - # Raspi build config - - name: Raspi - dockerfile: Dockerfile-raspi - platforms: linux/arm/v7 - suffix: "-raspi" - continue-on-error: true steps: - uses: actions/checkout@v3 diff --git a/Dockerfile b/Dockerfile index b597c477..a78eb4fd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ FROM python:3.10-alpine3.18 #Install all dependencies. -RUN apk add --no-cache postgresql-libs postgresql-client gettext zlib libjpeg libwebp libxml2-dev libxslt-dev py-cryptography openldap +RUN apk add --no-cache postgresql-libs postgresql-client gettext zlib libjpeg libwebp libxml2-dev libxslt-dev openldap #Print all logs without buffering it. ENV PYTHONUNBUFFERED 1 @@ -15,6 +15,10 @@ WORKDIR /opt/recipes COPY requirements.txt ./ +RUN \ + if [ `apk --print-arch` = "armv7" ]; then \ + printf "[global]\nextra-index-url=https://www.piwheels.org/simple\n" > /etc/pip.conf ; \ + fi RUN apk add --no-cache --virtual .build-deps gcc musl-dev postgresql-dev zlib-dev jpeg-dev libwebp-dev openssl-dev libffi-dev cargo openldap-dev python3-dev git && \ echo -n "INPUT ( libldap.so )" > /usr/lib/libldap_r.so && \ python -m venv venv && \ diff --git a/Dockerfile-raspi b/Dockerfile-raspi deleted file mode 100644 index 7640d52d..00000000 --- a/Dockerfile-raspi +++ /dev/null @@ -1,33 +0,0 @@ -# builds of cryptography for raspberry pi (or better arm v7) fail for some -FROM python:3.9-alpine3.15 - -#Install all dependencies. -RUN apk add --no-cache postgresql-libs postgresql-client gettext zlib libjpeg libwebp libxml2-dev libxslt-dev py-cryptography openldap gcompat - -#Print all logs without buffering it. -ENV PYTHONUNBUFFERED 1 - -#This port will be used by gunicorn. -EXPOSE 8080 - -#Create app dir and install requirements. -RUN mkdir /opt/recipes -WORKDIR /opt/recipes - -COPY requirements.txt ./ -RUN \ - if [ `apk --print-arch` = "armv7" ]; then \ - printf "[global]\nextra-index-url=https://www.piwheels.org/simple\n" > /etc/pip.conf ; \ - fi -RUN apk add --no-cache --virtual .build-deps gcc musl-dev zlib-dev jpeg-dev libwebp-dev python3-dev git && \ - echo -n "INPUT ( libldap.so )" > /usr/lib/libldap_r.so && \ - python -m venv venv && \ - /opt/recipes/venv/bin/python -m pip install --upgrade pip && \ - venv/bin/pip install wheel==0.37.1 && \ - venv/bin/pip install -r requirements.txt --no-cache-dir --no-binary=Pillow && \ - apk --purge del .build-deps - -#Copy project and execute it. -COPY . ./ -RUN chmod +x boot.sh -ENTRYPOINT ["/opt/recipes/boot.sh"]