Closed MkLHX closed 3 years ago
Are you installing from https://pypi.org/project/numpy/ or https://www.piwheels.org/project/numpy/ How long have you let it build for?
Can you give all the commands you ran and any relevant files or logs for reproducing the issue
Hi thanks for your answer.
I don't install numpy by myself because it's a dependency from an other package i used.
The app is dockerized and only stuck when i build it on RPI 4B / RPI 3A+, i wait about 30/40min and i stop the script by using CTRL+C because it's never ends or maybe after 1-1h30.
i'm looking for emulation package to allow image build on other support than RPI to faster build.
My Dockerfile
FROM arm32v7/python:3.8-slim-buster
RUN apt-get -q update && apt-get -qy install python3-dev
WORKDIR /WaterSensor/
ARG SERVER_TYPE
ARG SECRET_KEY
ARG DJANGO_ALLOWED_HOSTS
ARG DJANGO_PORT
ARG DB_USER
ARG DB_PASSWORD
ARG DB_HOST
ARG DB_PORT
ARG GREENPONIK_JSON_LOGIN_ENTRYPOINT_URL
ARG GREENPONIK_CHECK_API_OPEN_URL
ARG USER_PATH
ARG AP_STA_PATH
# caching the requirements installation
COPY ./django_app/requirements.txt requirements.txt
RUN python -m pip -q install -r requirements.txt
COPY ./django_app /WaterSensor/
EXPOSE $DJANGO_PORT
CMD ["bash", "bin/django-start"]
docker-compose
django:
privileged: true
build:
context: .
dockerfile: docker/django/Dockerfile
args:
- APP_TITLE=${APP_TITLE}
- AP_STA_PATH=${AP_STA_PATH}
- DB_HOST=${DB_HOST}
- DB_PASSWORD=${DB_PASSWORD}
- DB_PORT=${DB_PORT}
- DB_USER=${DB_USER}
- DJANGO_ALLOWED_HOSTS=${DJANGO_ALLOWED_HOSTS}
- DJANGO_PORT=${DJANGO_PORT}
- GREENPONIK_CHECK_API_OPEN_URL=${GREENPONIK_CHECK_API_OPEN_URL}
- GREENPONIK_JSON_LOGIN_ENTRYPOINT_URL=${GREENPONIK_JSON_LOGIN_ENTRYPOINT_URL}
- NGINX_HOST=${NGINX_HOST}
- NGINX_PORT=${NGINX_PORT}
- PROJECT_NAME=${PROJECT_NAME}
- SECRET_KEY=${SECRET_KEY}
- SERVER_TYPE=${SERVER_TYPE}
- USER_PATH=${USER_PATH}
- VERSION=${VERSION}
hostname: django
working_dir: /WaterSensor/
volumes:
- /django_app/django.sock:/var/run/django.sock
- ./django_app/:/WaterSensor/
- ./django_app/static/:/WaterSensor/static/
- ./django_app/media/:/WaterSensor/media/
- ./django_app/logs/:/WaterSensor/logs/
command: sh bin/django-start
env_file: .env
restart: always
expose:
- "${DJANGO_PORT:-8000}"
ports:
- ${DJANGO_PORT:-8000}:8000
networks:
- app_net
Facing same behavior on arm32v7/python:3.8-slim-buster and arm32v7/python:3.8-slim-buster but not on my windows 10 virtualenv
This is probably an issue related to pip 20.3 that uses the new dependency resolver.
try running pip install with --use-deprecated=legacy-resolver
.
I take a look tomorrow
Here log after docker image build failed
Today i edit pip update command by adding --use-deprecated=legacy-resolver
You'll want to install some dependencies, there's a few example Dockerfiles for installing Numpy https://github.com/docker-library/python/issues/558#issuecomment-721889425 https://github.com/docker-library/python/issues/218#issuecomment-320801821
I think you'd also want to use https://www.piwheels.org/project/numpy/ since https://pypi.org/project/numpy/#files only offers 64 bit ARM not the 32 bit you're wanting. So you'd be compiling it instead of using the many-linux wheel
But you should try asking over at the Docker Community Forums, Docker Community Slack, or Stack Overflow. Since these repos aren't really a user-help forum
Hi all, we are having a similar issue and believe it's the same reason. Is there a way to get the previous base images? I thought tags on official repository shouldn't change with the time, maybe some of the longest tag is stable?
You can pull by the full major/minor version number and variant to get the most specific version, like python:3.8.5-slim-buster
, these are all of the Python image updates https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fpython+is%3Aclosed
We keep a full record of every image's sha256 hash that the image can be pulled by (as long as the images are still present on Dockerhub, but the previous tag may have been overwritten). Going through the commit history will show all previous versions (https://github.com/docker-library/repo-info/).
You'll want to install some dependencies, there's a few example Dockerfiles for installing Numpy https://github.com/docker-library/python/issues/558#issuecomment-721889425 https://github.com/docker-library/python/issues/218#issuecomment-320801821
I think you'd also want to use https://www.piwheels.org/project/numpy/ since https://pypi.org/project/numpy/#files only offers 64 bit ARM not the 32 bit you're wanting. So you'd be compiling it instead of using the many-linux wheel
But you should try asking over at the Docker Community Forums, Docker Community Slack, or Stack Overflow. Since these repos aren't really a user-help forum
Ok thanks. I known github is not a help forum. But the same django app and dependencies installation haven't this bug when it's run on Raspberry Pi directly. Only on official docker python image so i'm just trying to find cause and why... I don't need a tutorial for how to install numpy. Just need project worker as expected with tools like docker. So stay tuned maybe people have the same issue...
17 days ago, I had same problem (Pip version was updated to 20.3 at python base image). I solved the resolver problem by adding --use-deprecated=legacy-resolver to my "pip install" command.
However, I got a new error and I see pip was upgraded to 20.3.3 and This solution, adding --use-deprecated=legacy-resolver, does not work anymore.
Error message: option --use-deprecated: invalid choice: 'legacy-resolver' (choose from)
Which choice I can use for using old resolver.
EDITED: After deleting --use-deprecated=legacy-resolver option, pip install is working fine. (at pip 20.3.3). Thanks.
Looks like this was a bug in the new pip dependency resolver and that it's fixed in 20.3.3. :+1:
Hello, i'm trying to build a arm32v7/python docker container using 3.8-slim-buster image and docker-compose build. The pip install never ends and hang the container build i get this from logs:
I'm working on raspberry pi IOT project and i get this issue only on docker container build...
Somebody have an idea about that?