1

I am using the following command to install an application from a directory pre-populated with .whl files:

pip install --find-links=/tmp/wheelhouse --no-index uwsgi myapp

Here are the contents of /tmp/wheelhouse

drwxrwxrwt 3 root root 4.0K Aug 28 07:37 ..
-rw-r--r-- 1 root root 3.5M Aug 28 07:36 Babel-2.1.1-py2.py3-none-any.whl
-rw-r--r-- 1 root root 114K Aug 28 07:36 Flask-0.10.1-py2-none-any.whl
-rw-r--r-- 1 root root  15K Aug 28 07:36 Flask_Cors-1.10.3-py2-none-any.whl
-rw-r--r-- 1 root root  18K Aug 28 07:36 Flask_JWT_Extended-3.8.1-py2.py3-none-any.whl
-rw-r--r-- 1 root root 124K Aug 28 07:36 Jinja2-2.10-py2.py3-none-any.whl
-rw-r--r-- 1 root root  76K Aug 28 07:36 Mako-1.0.7-py2-none-any.whl
-rw-r--r-- 1 root root  25K Aug 28 07:36 MarkupSafe-1.0-cp27-cp27mu-linux_x86_64.whl
-rw-r--r-- 1 root root  29K Aug 28 07:36 PTable-0.9.2-py2-none-any.whl
-rw-r--r-- 1 root root  20K Aug 28 07:36 PyJWT-1.6.4-py2.py3-none-any.whl
-rw-r--r-- 1 root root  69K Aug 28 07:36 PyMySQL-0.6.7-py2.py3-none-any.whl
-rw-r--r-- 1 root root  44K Aug 28 07:36 PyYAML-3.11-cp27-cp27mu-linux_x86_64.whl
-rw-r--r-- 1 root root 977K Aug 28 07:36 SQLAlchemy-1.0.9-cp27-cp27mu-linux_x86_64.whl
-rw-r--r-- 1 root root 316K Aug 28 07:36 Werkzeug-0.14.1-py2.py3-none-any.whl
-rw-r--r-- 1 root root 144K Aug 28 07:36 alembic-0.8.6-py2.py3-none-any.whl
-rw-r--r-- 1 root root  51K Aug 28 07:36 amqp-1.4.9-py2.py3-none-any.whl
-rw-r--r-- 1 root root  22K Aug 28 07:36 aniso8601-3.0.2-py2.py3-none-any.whl
-rw-r--r-- 1 root root 5.6K Aug 28 07:36 anyjson-0.3.3-py2-none-any.whl
-rw-r--r-- 1 root root 100K Aug 28 07:36 asn1crypto-0.24.0-py2.py3-none-any.whl
-rw-r--r-- 1 root root 144K Aug 28 07:36 certifi-2018.8.24-py2.py3-none-any.whl
-rw-r--r-- 1 root root 398K Aug 28 07:36 cffi-1.11.5-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 131K Aug 28 07:36 chardet-3.0.4-py2.py3-none-any.whl
-rw-r--r-- 1 root root 2.1M Aug 28 07:36 cryptography-2.3.1-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 9.1K Aug 28 07:36 decorator-4.3.0-py2.py3-none-any.whl
-rw-r--r-- 1 root root 169K Aug 28 07:37 dnspython-1.14.0-py2-none-any.whl
-rw-r--r-- 1 root root  55K Aug 28 07:36 domain_lexicographical_analysis-0.6.0-py2-none-any.whl
-rw-r--r-- 1 root root 118K Aug 28 07:36 elasticsearch-6.3.1-py2.py3-none-any.whl
-rw-r--r-- 1 root root  48K Aug 28 07:36 elasticsearch_dsl-6.2.1-py2.py3-none-any.whl
-rw-r--r-- 1 root root 9.0K Aug 28 07:36 myapp_ls_pyclient-0.2.0-py2-none-any.whl
-rw-r--r-- 1 root root 166K Aug 28 07:36 myapp-1.4.2-py2-none-any.whl
-rw-r--r-- 1 root root  24K Aug 28 07:36 enorasys_swissknife-0.1.0-py2-none-any.whl
-rw-r--r-- 1 root root  13K Aug 28 07:36 enum34-1.1.6-py2-none-any.whl
-rw-r--r-- 1 root root 882K Aug 28 07:36 flask_restplus-0.9.0-py2.py3-none-any.whl
-rw-r--r-- 1 root root  11K Aug 28 07:36 functools32-3.2.3.post2-py2-none-any.whl
-rw-r--r-- 1 root root 489K Aug 28 07:37 future-0.16.0-py2-none-any.whl
-rw-r--r-- 1 root root  14K Aug 28 07:36 futures-3.0.5-py2-none-any.whl
-rw-r--r-- 1 root root  18K Aug 28 07:36 geoip2-2.9.0-py2.py3-none-any.whl
-rw-r--r-- 1 root root  45K Aug 28 07:36 hiredis-0.2.0-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root  57K Aug 28 07:36 idna-2.7-py2.py3-none-any.whl
-rw-r--r-- 1 root root  15K Aug 28 07:37 ipaddr-2.2.0-py2-none-any.whl
-rw-r--r-- 1 root root  18K Aug 28 07:36 ipaddress-1.0.22-py2.py3-none-any.whl
-rw-r--r-- 1 root root  79K Aug 28 07:36 ipwhois-1.0.0-py2.py3-none-any.whl
-rw-r--r-- 1 root root  11K Aug 28 07:36 itsdangerous-0.24-py2-none-any.whl
-rw-r--r-- 1 root root  39K Aug 28 07:36 jsonschema-2.6.0-py2.py3-none-any.whl
-rw-r--r-- 1 root root 235K Aug 28 07:36 kombu-3.0.35-py2.py3-none-any.whl
-rw-r--r-- 1 root root 5.6M Aug 28 07:36 lxml-4.2.4-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root  17K Aug 28 07:37 maxminddb-1.4.1-py2-none-any.whl
-rw-r--r-- 1 root root 1.5M Aug 28 07:36 netaddr-0.7.18-py2.py3-none-any.whl
-rw-r--r-- 1 root root 1.3M Aug 28 07:36 networkx-1.11-py2.py3-none-any.whl
-rw-r--r-- 1 root root  14M Aug 28 07:36 numpy-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 194K Aug 28 07:36 psutil-5.2.2-cp27-cp27mu-linux_x86_64.whl
-rw-r--r-- 1 root root  84K Aug 28 07:36 publicsuffix2-2.20160818-py2.py3-none-any.whl
-rw-r--r-- 1 root root 203K Aug 28 07:37 pycparser-2.18-py2.py3-none-any.whl
-rw-r--r-- 1 root root 197K Aug 28 07:36 python_dateutil-2.5.2-py2.py3-none-any.whl
-rw-r--r-- 1 root root 3.5K Aug 28 07:36 python_editor-1.0.3-py2-none-any.whl
-rw-r--r-- 1 root root  79K Aug 28 07:37 python_whois-0.7.0-py2-none-any.whl
-rw-r--r-- 1 root root 499K Aug 28 07:36 pytz-2018.5-py2.py3-none-any.whl
-rw-r--r-- 1 root root  60K Aug 28 07:36 redis-2.10.5-py2.py3-none-any.whl
-rw-r--r-- 1 root root  90K Aug 28 07:36 requests-2.19.1-py2.py3-none-any.whl
-rw-r--r-- 1 root root  37K Aug 28 07:36 sas-1.2.0-py2-none-any.whl
-rw-r--r-- 1 root root 4.8M Aug 28 07:36 scikit_learn-0.19.2-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root  30M Aug 28 07:36 scipy-1.1.0-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 106K Aug 28 07:36 simplejson-3.8.2-cp27-cp27mu-linux_x86_64.whl
-rw-r--r-- 1 root root  11K Aug 28 07:36 six-1.11.0-py2.py3-none-any.whl
-rw-r--r-- 1 root root 109K Aug 28 07:36 splunk_sdk-1.5.0-py2-none-any.whl
-rw-r--r-- 1 root root 462K Aug 28 07:36 uWSGI-2.0.17.1-cp27-cp27mu-linux_x86_64.whl
-rw-r--r-- 1 root root  60K Aug 28 07:36 ujson-1.34-cp27-cp27mu-linux_x86_64.whl
-rw-r--r-- 1 root root 131K Aug 28 07:36 urllib3-1.23-py2.py3-none-any.whl

Why it fails to find the files?

Here is the error

Ignoring indexes: https://pypi.python.org/simple/
Downloading/unpacking uwsgi
  Could not find any downloads that satisfy the requirement uwsgi
Cleaning up...
No distributions at all found for uwsgi
Storing debug log for failure in /root/.pip/pip.log

In case it makes any difference these commands RUN from within a Dockerfile.

pkaramol
  • 16,451
  • 43
  • 149
  • 324
  • 1
    You should run `pip` with the `-vv` argument to see detailed message and check the log file. Also make sure you have a recent version of pip. – Klaus D. Aug 28 '18 at 08:05
  • You have a platform specific `uwsgi` wheel in your local index. This will be selected for installation only on 64bit Linux systems with Python 2.7, compiled with pymalloc and wide unicode enabled, also the glibc version must match the one that was used for building the wheel (so for example, a wheel compiled on any glibc-based distro will not install on Alpine, and vice versa). What are your target platform/ABI/Python tags? You can find the neceassry commands [here](https://stackoverflow.com/questions/46127407/not-able-to-upgrade-tensorflow-on-mac/49342341#49342341). – hoefling Aug 28 '18 at 08:19

1 Answers1

0

What solved the problem is the following:

RUN bash -c 'pip install --find-links=/tmp/wheelhouse --no-index uwsgi myapp'
pkaramol
  • 16,451
  • 43
  • 149
  • 324