Build pillow for armv7/ raspi

This commit is contained in:
Daniel Schulz 2022-05-09 13:24:59 +02:00
parent 33a7fee1cc
commit 71b41efe6c
No known key found for this signature in database
GPG Key ID: 907BA47E4F808EF2

View File

@ -2,7 +2,7 @@
FROM python:3.9-alpine3.15 FROM python:3.9-alpine3.15
#Install all dependencies. #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 py-cryptography openldap gcompat
#Print all logs without buffering it. #Print all logs without buffering it.
ENV PYTHONUNBUFFERED 1 ENV PYTHONUNBUFFERED 1
@ -15,19 +15,16 @@ RUN mkdir /opt/recipes
WORKDIR /opt/recipes WORKDIR /opt/recipes
COPY requirements.txt ./ COPY requirements.txt ./
RUN \ RUN \
if [ `apk --print-arch` = "armv7" ]; then \ if [ `apk --print-arch` = "armv7" ]; then \
printf "[global]\nextra-index-url=https://www.piwheels.org/simple\n" > /etc/pip.conf ; \ printf "[global]\nextra-index-url=https://www.piwheels.org/simple\n" > /etc/pip.conf ; \
fi fi
RUN apk add --no-cache --virtual .build-deps gcc musl-dev zlib-dev jpeg-dev libwebp-dev python3-dev && \
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 && \
echo -n "INPUT ( libldap.so )" > /usr/lib/libldap_r.so && \ echo -n "INPUT ( libldap.so )" > /usr/lib/libldap_r.so && \
python -m venv venv && \ python -m venv venv && \
/opt/recipes/venv/bin/python -m pip install --upgrade pip && \ /opt/recipes/venv/bin/python -m pip install --upgrade pip && \
venv/bin/pip install wheel==0.37.1 && \ venv/bin/pip install wheel==0.37.1 && \
venv/bin/pip install setuptools_rust==1.1.2 && \ venv/bin/pip install -r requirements.txt --no-cache-dir --no-binary=Pillow && \
venv/bin/pip install -r requirements.txt --no-cache-dir &&\
apk --purge del .build-deps apk --purge del .build-deps
#Copy project and execute it. #Copy project and execute it.