Closed dennisN86 closed 3 years ago
it seems related to https://github.com/docker/compose/issues/8105
Cryptography built with rust seems to not be necessary for building the container. A workaround is to modify the docker file as mentioned in the debug assistance section. A simple adding of following line to Dockerfile should fix it:
ARG CRYPTOGRAPHY_DONT_BUILD_RUST=1
Then try to build the docker image again.
pr created based on comment above and other pr i mentioned. if anybody can test it and it work, pr should be accepted
The change above is sadly throwing the same error.
can you try it once again?
there is actually flag to set env var direct from command line
so you may want to try that to if recent commit failed
I check out the latest commit and my build went though as well. Thanks for fixing the issue!
Closed at #502.
Hello,
the current Dockerfile is not properly executing a build anymore. It gets stuck while trying to build wheels for cryptography. I'm running Manjaro with the latest 5.11.0 Kernel. Thank you for having a look into this.
[dennis@moped buku]$ docker build -t bukuserver .
Sending build context to Docker daemon 5.615MB Step 1/8 : FROM python:alpine ---> 85987b1a8b9d Step 2/8 : MAINTAINER Ameya Shenoy "shenoy.ameya@gmail.com" ---> Using cache ---> 527c082aba0e Step 3/8 : ENV BUKUSERVER_PORT=5001 ---> Using cache ---> a83090fcb694 Step 4/8 : COPY . /buku ---> Using cache ---> fe5857e60498 Step 5/8 : RUN set -ex && apk add --no-cache --virtual .build-deps gcc openssl-dev musl-dev libffi-dev && pip install -U --no-cache-dir pip gunicorn /buku[server] && apk del .build-deps && rm -rf /buku ---> Running in 7adf6954c055
pip install -U --no-cache-dir pip gunicorn '/buku[server]' Processing /buku Requirement already satisfied: pip in /usr/local/lib/python3.9/site-packages (21.0.1) Collecting gunicorn Downloading gunicorn-20.0.4-py2.py3-none-any.whl (77 kB) Collecting beautifulsoup4>=4.4.1 Downloading beautifulsoup4-4.9.3-py3-none-any.whl (115 kB) Collecting certifi Downloading certifi-2020.12.5-py2.py3-none-any.whl (147 kB) Collecting cryptography>=1.2.3 Downloading cryptography-3.4.5.tar.gz (546 kB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing wheel metadata: started Preparing wheel metadata: finished with status 'done' Collecting urllib3>=1.23 Downloading urllib3-1.26.3-py2.py3-none-any.whl (137 kB) Collecting html5lib>=1.0.1 Downloading html5lib-1.1-py2.py3-none-any.whl (112 kB) Collecting appdirs>=1.4.3 Downloading appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB) Collecting arrow>=0.12.1 Downloading arrow-0.17.0-py2.py3-none-any.whl (50 kB) Collecting cffi>=1.9.1 Downloading cffi-1.14.5.tar.gz (475 kB) Collecting click>=6.7 Downloading click-7.1.2-py2.py3-none-any.whl (82 kB) Collecting Flask-Admin>=1.5.1 Downloading Flask-Admin-1.5.7.tar.gz (6.6 MB) Collecting Flask-API>=0.6.9 Downloading Flask_API-2.0-py3-none-any.whl (119 kB) Collecting Flask-Bootstrap>=3.3.7.1 Downloading Flask-Bootstrap-3.3.7.1.tar.gz (456 kB) Collecting flask-paginate>=0.5.1 Downloading flask_paginate-0.8.1-py2.py3-none-any.whl (7.0 kB) Collecting flask-reverse-proxy-fix>=0.2.1 Downloading flask_reverse_proxy_fix-0.2.1-py3-none-any.whl (7.1 kB) Collecting Flask-WTF>=0.14.2 Downloading Flask_WTF-0.14.3-py2.py3-none-any.whl (13 kB) Collecting Flask>=1.0.2 Downloading Flask-1.1.2-py2.py3-none-any.whl (94 kB) Collecting idna>=2.5 Downloading idna-3.1-py3-none-any.whl (58 kB) Collecting itsdangerous>=0.24 Downloading itsdangerous-1.1.0-py2.py3-none-any.whl (16 kB) Collecting Jinja2>=2.10.1 Downloading Jinja2-2.11.3-py2.py3-none-any.whl (125 kB) Collecting MarkupSafe>=1.0 Downloading MarkupSafe-1.1.1.tar.gz (19 kB) Collecting packaging>=16.8 Downloading packaging-20.9-py2.py3-none-any.whl (40 kB) Collecting pyasn1>=0.2.3 Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB) Collecting pycparser>=2.17 Downloading pycparser-2.20-py2.py3-none-any.whl (112 kB) Collecting requests>=2.21.0 Downloading requests-2.25.1-py2.py3-none-any.whl (61 kB) Collecting six>=1.10.0 Downloading six-1.15.0-py2.py3-none-any.whl (10 kB) Collecting Werkzeug>=0.11.15 Downloading Werkzeug-1.0.1-py2.py3-none-any.whl (298 kB) Collecting python-dateutil>=2.7.0 Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB) Collecting soupsieve>1.2 Downloading soupsieve-2.2-py3-none-any.whl (33 kB) Collecting wtforms Downloading WTForms-2.3.3-py2.py3-none-any.whl (169 kB) Collecting dominate Downloading dominate-2.6.0-py2.py3-none-any.whl (29 kB) Collecting visitor Downloading visitor-0.1.3.tar.gz (3.3 kB) Collecting webencodings Downloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB) Collecting pyparsing>=2.0.2 Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB) Collecting chardet<5,>=3.0.2 Downloading chardet-4.0.0-py2.py3-none-any.whl (178 kB) Collecting idna>=2.5 Downloading idna-2.10-py2.py3-none-any.whl (58 kB) Requirement already satisfied: setuptools>=3.0 in /usr/local/lib/python3.9/site-packages (from gunicorn) (53.0.0) Building wheels for collected packages: buku, cffi, cryptography, Flask-Admin, Flask-Bootstrap, MarkupSafe, visitor Building wheel for buku (setup.py): started Building wheel for buku (setup.py): finished with status 'done' Created wheel for buku: filename=buku-4.5-py3-none-any.whl size=180726 sha256=2275135e131ea33e1a4c65775317813d9e27a14df05f6963fb28a45062580e2e Stored in directory: /tmp/pip-ephem-wheel-cache-rpe2zy/wheels/6f/d8/a8/54ede2226f3babdf663ab4a55c9d413141a528dcfd29f939c3 Building wheel for cffi (setup.py): started Building wheel for cffi (setup.py): finished with status 'done' Created wheel for cffi: filename=cffi-1.14.5-cp39-cp39-linux_x86_64.whl size=184097 sha256=889c2dc4f85eaccbecb19ed66cca8e538fc145faadf7031e521a95b08ead98e1 Stored in directory: /tmp/pip-ephem-wheel-cache-rpe2zy/wheels/9d/fd/b3/1c45c7d2a111aa5a29f24e12609ea5bc8a010d1b8351488796 Building wheel for cryptography (PEP 517): started Building wheel for cryptography (PEP 517): finished with status 'error' ERROR: Command errored out with exit status 1: command: /usr/local/bin/python /usr/local/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /tmp/tmpedkajnkl cwd: /tmp/pip-install-72utyc3m/cryptography_5d54cdf61d3f42f49d7ec9ce6939d9df Complete output (149 lines): running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-3.9 creating build/lib.linux-x86_64-3.9/cryptography copying src/cryptography/utils.py -> build/lib.linux-x86_64-3.9/cryptography copying src/cryptography/init.py -> build/lib.linux-x86_64-3.9/cryptography copying src/cryptography/exceptions.py -> build/lib.linux-x86_64-3.9/cryptography copying src/cryptography/about.py -> build/lib.linux-x86_64-3.9/cryptography copying src/cryptography/fernet.py -> build/lib.linux-x86_64-3.9/cryptography creating build/lib.linux-x86_64-3.9/cryptography/hazmat copying src/cryptography/hazmat/_der.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat copying src/cryptography/hazmat/_oid.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat copying src/cryptography/hazmat/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat copying src/cryptography/hazmat/_types.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat creating build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/oid.py -> build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/ocsp.py -> build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/base.py -> build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/name.py -> build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/init.py -> build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/general_name.py -> build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/extensions.py -> build/lib.linux-x86_64-3.9/cryptography/x509 copying src/cryptography/x509/certificate_transparency.py -> build/lib.linux-x86_64-3.9/cryptography/x509 creating build/lib.linux-x86_64-3.9/cryptography/hazmat/backends copying src/cryptography/hazmat/backends/interfaces.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends copying src/cryptography/hazmat/backends/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends creating build/lib.linux-x86_64-3.9/cryptography/hazmat/bindings copying src/cryptography/hazmat/bindings/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/bindings creating build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/_asymmetric.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/cmac.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/padding.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/hashes.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/constant_time.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/keywrap.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/_cipheralgorithm.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/poly1305.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/hmac.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/_serialization.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives copying src/cryptography/hazmat/primitives/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives creating build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/x509.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/ocsp.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/encode_asn1.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl copying src/cryptography/hazmat/backends/openssl/x25519.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/backends/openssl creating build/lib.linux-x86_64-3.9/cryptography/hazmat/bindings/openssl copying src/cryptography/hazmat/bindings/openssl/_conditional.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/bindings/openssl copying src/cryptography/hazmat/bindings/openssl/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/bindings/openssl copying src/cryptography/hazmat/bindings/openssl/binding.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/bindings/openssl creating build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/twofactor copying src/cryptography/hazmat/primitives/twofactor/totp.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/twofactor copying src/cryptography/hazmat/primitives/twofactor/hotp.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/twofactor copying src/cryptography/hazmat/primitives/twofactor/utils.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/twofactor copying src/cryptography/hazmat/primitives/twofactor/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/twofactor creating build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf copying src/cryptography/hazmat/primitives/kdf/kbkdf.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf copying src/cryptography/hazmat/primitives/kdf/x963kdf.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf copying src/cryptography/hazmat/primitives/kdf/scrypt.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf copying src/cryptography/hazmat/primitives/kdf/pbkdf2.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf copying src/cryptography/hazmat/primitives/kdf/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf copying src/cryptography/hazmat/primitives/kdf/concatkdf.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf copying src/cryptography/hazmat/primitives/kdf/hkdf.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/kdf creating build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/padding.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/x448.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/ec.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/dsa.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/ed448.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/utils.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/ed25519.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/rsa.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/dh.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric copying src/cryptography/hazmat/primitives/asymmetric/x25519.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/asymmetric creating build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/ciphers copying src/cryptography/hazmat/primitives/ciphers/algorithms.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/ciphers copying src/cryptography/hazmat/primitives/ciphers/base.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/ciphers copying src/cryptography/hazmat/primitives/ciphers/aead.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/ciphers copying src/cryptography/hazmat/primitives/ciphers/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/ciphers copying src/cryptography/hazmat/primitives/ciphers/modes.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/ciphers creating build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/serialization copying src/cryptography/hazmat/primitives/serialization/ssh.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/serialization copying src/cryptography/hazmat/primitives/serialization/base.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/serialization copying src/cryptography/hazmat/primitives/serialization/init.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/serialization copying src/cryptography/hazmat/primitives/serialization/pkcs7.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/serialization copying src/cryptography/hazmat/primitives/serialization/pkcs12.py -> build/lib.linux-x86_64-3.9/cryptography/hazmat/primitives/serialization running egg_info writing src/cryptography.egg-info/PKG-INFO writing dependency_links to src/cryptography.egg-info/dependency_links.txt writing requirements to src/cryptography.egg-info/requires.txt writing top-level names to src/cryptography.egg-info/top_level.txt reading manifest file 'src/cryptography.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'docs/_build' warning: no previously-included files found matching 'vectors' warning: no previously-included files matching '' found under directory 'vectors' warning: no previously-included files matching '' found under directory '.github' warning: no previously-included files found matching 'release.py' warning: no previously-included files found matching '.coveragerc' warning: no previously-included files found matching 'codecov.yml' warning: no previously-included files found matching '.readthedocs.yml' warning: no previously-included files found matching 'dev-requirements.txt' warning: no previously-included files found matching 'tox.ini' warning: no previously-included files found matching 'mypy.ini' warning: no previously-included files matching '' found under directory '.zuul.d' warning: no previously-included files matching '' found under directory '.zuul.playbooks' writing manifest file 'src/cryptography.egg-info/SOURCES.txt' copying src/cryptography/py.typed -> build/lib.linux-x86_64-3.9/cryptography running build_ext generating cffi module 'build/temp.linux-x86_64-3.9/_padding.c' creating build/temp.linux-x86_64-3.9 generating cffi module 'build/temp.linux-x86_64-3.9/_openssl.c' running build_rust
=============================DEBUG ASSISTANCE============================= If you are seeing a compilation error please try the following steps to successfully install cryptography: 1) Upgrade to the latest pip and try again. This will fix errors for most users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip 2) Read https://cryptography.io/en/latest/installation.html for specific instructions for your platform. 3) Check our frequently asked questions for more information: https://cryptography.io/en/latest/faq.html 4) Ensure you have a recent Rust toolchain installed: https://cryptography.io/en/latest/installation.html#rust 5) If you are experiencing issues with Rust for this release only you may set the environment variable
CRYPTOGRAPHY_DONT_BUILD_RUST=1
. =============================DEBUG ASSISTANCE=============================error: Can not find Rust compiler
ERROR: Failed building wheel for cryptography Building wheel for Flask-Admin (setup.py): started Building wheel for Flask-Admin (setup.py): finished with status 'done' Created wheel for Flask-Admin: filename=Flask_Admin-1.5.7-py3-none-any.whl size=7492406 sha256=bf4e49bb6b808cbd079809391ce4db4920364e6a5683fe3002620724f3136c7d Stored in directory: /tmp/pip-ephem-wheel-cache-rpe__2zy/wheels/62/7c/d2/bb7da68d19e1b2461797e6050620c471308560372e5d311c77 Building wheel for Flask-Bootstrap (setup.py): started Building wheel for Flask-Bootstrap (setup.py): finished with status 'done' Created wheel for Flask-Bootstrap: filename=Flask_Bootstrap-3.3.7.1-py3-none-any.whl size=460123 sha256=c4e962d46e1da30c5bd3d6b721cade6496ecaba69fc01dcce4f23ad632c1353c Stored in directory: /tmp/pip-ephem-wheel-cache-rpe2zy/wheels/bb/41/c0/e09286bce2bca8d80bcaeccf519aa73b9747278e78ca83ce3f Building wheel for MarkupSafe (setup.py): started Building wheel for MarkupSafe (setup.py): finished with status 'done' Created wheel for MarkupSafe: filename=MarkupSafe-1.1.1-cp39-cp39-linux_x86_64.whl size=17058 sha256=72df2305a707807e8d7ffe2373eb2ae69bc607cb470b1ace87e631d32ec6292f Stored in directory: /tmp/pip-ephem-wheel-cache-rpe2zy/wheels/e0/19/6f/6ba857621f50dc08e084312746ed3ebc14211ba30037d5e44e Building wheel for visitor (setup.py): started Building wheel for visitor (setup.py): finished with status 'done' Created wheel for visitor: filename=visitor-0.1.3-py3-none-any.whl size=3929 sha256=db24360cc26742134e855022e8be01910f25484cbd9befd28b263bbe8e61e03e Stored in directory: /tmp/pip-ephem-wheel-cache-rpe__2zy/wheels/cd/93/8e/b92d317bbcc888f0bdcd7df644ae49e8e0f1b4f738eec61b82 Successfully built buku cffi Flask-Admin Flask-Bootstrap MarkupSafe visitor Failed to build cryptography ERROR: Could not build wheels for cryptography which use PEP 517 and cannot be installed directly The command '/bin/sh -c set -ex && apk add --no-cache --virtual .build-deps gcc openssl-dev musl-dev libffi-dev && pip install -U --no-cache-dir pip gunicorn /buku[server] && apk del .build-deps && rm -rf /buku' returned a non-zero code: 1