错误:命令出错,退出状态为 1:在 Heroku 上部署代码时

时间:2021-07-28 02:30:13

标签: python heroku rust

我正在尝试在 Heroku 平台上部署我的 Flask 应用程序。我对这个平台完全陌生。我已经使用命令 pip freeze > requirements.txt 创建了我的 requirements.txt 还创建了一个包含 web: gunicorn app:app

的 Procfile

当我尝试在 Heroku 上部署代码时,显示相同的错误(准备轮元数据:完成状态为“错误”)我已经查看了错误消息,并按照我尝试安装 Rust 包管理器的说明通过给定的链接 https://rustup.rs/ 但仍然显示相同的错误。

请帮我弄清楚我在这里遗漏了什么。 提前致谢

-----> Building on the Heroku-20 stack
-----> Determining which buildpack to use for this app
-----> Python app detected
-----> No Python version was specified. Using the buildpack default: python-3.9.6
       To use a different version, see: https://devcenter.heroku.com/articles/python-runtimes
-----> Installing python-3.9.6
-----> Installing pip 20.2.4, setuptools 47.1.1 and wheel 0.36.2
-----> Installing SQLite3
-----> Installing requirements with pip
       Collecting absl-py==0.12.0
         Downloading absl_py-0.12.0-py3-none-any.whl (129 kB)
       Collecting altgraph==0.17
         Downloading altgraph-0.17-py2.py3-none-any.whl (21 kB)
       Collecting anyio==2.2.0
         Downloading anyio-2.2.0-py3-none-any.whl (65 kB)
       Collecting argon2-cffi==20.1.0
         Downloading argon2_cffi-20.1.0-cp35-abi3-manylinux1_x86_64.whl (97 kB)
       Collecting async-generator==1.10
         Downloading async_generator-1.10-py3-none-any.whl (18 kB)
       Collecting attrs==20.3.0
         Downloading attrs-20.3.0-py2.py3-none-any.whl (49 kB)
       Collecting autopep8==1.5.7
         Downloading autopep8-1.5.7-py2.py3-none-any.whl (45 kB)
       Collecting Babel==2.9.1
         Downloading Babel-2.9.1-py2.py3-none-any.whl (8.8 MB)
       Collecting backcall==0.2.0
         Downloading backcall-0.2.0-py2.py3-none-any.whl (11 kB)
       Collecting beautifulsoup4==4.9.3
         Downloading beautifulsoup4-4.9.3-py3-none-any.whl (115 kB)
       Collecting bleach==3.3.0
         Downloading bleach-3.3.0-py2.py3-none-any.whl (283 kB)
       Collecting blinker==1.4
         Downloading blinker-1.4.tar.gz (111 kB)
       Collecting cachetools==4.2.2
         Downloading cachetools-4.2.2-py3-none-any.whl (11 kB)
       Collecting catboost==0.25.1
         Downloading catboost-0.25.1-cp39-none-manylinux1_x86_64.whl (67.3 MB)
       Collecting category-encoders==2.2.2
         Downloading category_encoders-2.2.2-py2.py3-none-any.whl (80 kB)
       Collecting certifi==2020.12.5
         Downloading certifi-2020.12.5-py2.py3-none-any.whl (147 kB)
       Collecting cffi==1.14.5
         Downloading cffi-1.14.5-cp39-cp39-manylinux1_x86_64.whl (406 kB)
       Collecting chardet==4.0.0
         Downloading chardet-4.0.0-py2.py3-none-any.whl (178 kB)
       Collecting click==7.1.2
         Downloading click-7.1.2-py2.py3-none-any.whl (82 kB)
       Collecting colorama==0.4.4
         Downloading colorama-0.4.4-py2.py3-none-any.whl (16 kB)
       Collecting comtypes==1.1.10
         Downloading comtypes-1.1.10.tar.gz (145 kB)
       Collecting cycler==0.10.0
         Downloading cycler-0.10.0-py2.py3-none-any.whl (6.5 kB)
       Collecting decorator==5.0.7
         Downloading decorator-5.0.7-py3-none-any.whl (8.8 kB)
       Collecting defusedxml==0.7.1
         Downloading defusedxml-0.7.1-py2.py3-none-any.whl (25 kB)
       Collecting deprecation==2.1.0
         Downloading deprecation-2.1.0-py2.py3-none-any.whl (11 kB)
       Collecting dnspython==2.1.0
         Downloading dnspython-2.1.0-py3-none-any.whl (241 kB)
       Collecting docopt==0.6.2
         Downloading docopt-0.6.2.tar.gz (25 kB)
       Collecting email-validator==1.1.3
         Downloading email_validator-1.1.3-py2.py3-none-any.whl (18 kB)
       Collecting entrypoints==0.3
         Downloading entrypoints-0.3-py2.py3-none-any.whl (11 kB)
       Collecting et-xmlfile==1.1.0
         Downloading et_xmlfile-1.1.0-py3-none-any.whl (4.7 kB)
       Collecting Flask==1.1.2
         Downloading Flask-1.1.2-py2.py3-none-any.whl (94 kB)
       Collecting Flask-Mail==0.9.1
         Downloading Flask-Mail-0.9.1.tar.gz (45 kB)
       Collecting Flask-SQLAlchemy==2.5.1
         Downloading Flask_SQLAlchemy-2.5.1-py2.py3-none-any.whl (17 kB)
       Collecting Flask-WTF==0.15.1
         Downloading Flask_WTF-0.15.1-py2.py3-none-any.whl (13 kB)
       Collecting future==0.18.2
         Downloading future-0.18.2.tar.gz (829 kB)
       Collecting fuzzywuzzy==0.18.0
         Downloading fuzzywuzzy-0.18.0-py2.py3-none-any.whl (18 kB)
       Collecting gevent==21.1.2
         Downloading gevent-21.1.2-cp39-cp39-manylinux2010_x86_64.whl (6.0 MB)
       Collecting google-auth==1.30.0
         Downloading google_auth-1.30.0-py2.py3-none-any.whl (146 kB)
       Collecting google-auth-oauthlib==0.4.4
         Downloading google_auth_oauthlib-0.4.4-py2.py3-none-any.whl (18 kB)
       Collecting graphviz==0.16
         Downloading graphviz-0.16-py2.py3-none-any.whl (19 kB)
       Collecting greenlet==1.0.0
         Downloading greenlet-1.0.0-cp39-cp39-manylinux2010_x86_64.whl (163 kB)
       Collecting grpcio==1.34.1
         Downloading grpcio-1.34.1-cp39-cp39-manylinux2014_x86_64.whl (4.0 MB)
       Collecting gunicorn==20.1.0
         Downloading gunicorn-20.1.0-py3-none-any.whl (79 kB)
       Collecting h5py==3.1.0
         Downloading h5py-3.1.0-cp39-cp39-manylinux1_x86_64.whl (4.4 MB)
       Collecting idna==2.10
         Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
       Collecting imbalanced-learn==0.8.0
         Downloading imbalanced_learn-0.8.0-py3-none-any.whl (206 kB)
       Collecting imblearn==0.0
         Downloading imblearn-0.0-py2.py3-none-any.whl (1.9 kB)
       Collecting ipykernel==5.5.3
         Downloading ipykernel-5.5.3-py3-none-any.whl (120 kB)
       Collecting ipython==7.23.0
         Downloading ipython-7.23.0-py3-none-any.whl (785 kB)
       Collecting ipython-genutils==0.2.0
         Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl (26 kB)
       Collecting itsdangerous==1.1.0
         Downloading itsdangerous-1.1.0-py2.py3-none-any.whl (16 kB)
       Collecting jedi==0.18.0
         Downloading jedi-0.18.0-py2.py3-none-any.whl (1.4 MB)
       Collecting Jinja2==2.11.3
         Downloading Jinja2-2.11.3-py2.py3-none-any.whl (125 kB)
       Collecting joblib==0.17.0
         Downloading joblib-0.17.0-py3-none-any.whl (301 kB)
       Collecting Js2Py==0.71
         Downloading Js2Py-0.71-py3-none-any.whl (1.0 MB)
       Collecting json5==0.9.5
         Downloading json5-0.9.5-py2.py3-none-any.whl (17 kB)
       Collecting jsonschema==3.2.0
         Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
       Collecting jupyter-client==6.1.12
         Downloading jupyter_client-6.1.12-py3-none-any.whl (112 kB)
       Collecting jupyter-core==4.7.1
         Downloading jupyter_core-4.7.1-py3-none-any.whl (82 kB)
       Collecting jupyter-packaging==0.9.2
         Downloading jupyter_packaging-0.9.2-py2.py3-none-any.whl (13 kB)
       Collecting jupyter-server==1.6.4
         Downloading jupyter_server-1.6.4-py3-none-any.whl (377 kB)
       Collecting jupyterlab==3.0.14
         Downloading jupyterlab-3.0.14-py3-none-any.whl (8.3 MB)
       Collecting jupyterlab-pygments==0.1.2
         Downloading jupyterlab_pygments-0.1.2-py2.py3-none-any.whl (4.6 kB)
       Collecting jupyterlab-server==2.5.0
         Downloading jupyterlab_server-2.5.0-py3-none-any.whl (49 kB)
       Collecting keras-nightly==2.5.0.dev2021032900
         Downloading keras_nightly-2.5.0.dev2021032900-py2.py3-none-any.whl (1.2 MB)
       Collecting Keras-Preprocessing==1.1.2
         Downloading Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB)
       Collecting kiwisolver==1.3.1
         Downloading kiwisolver-1.3.1-cp39-cp39-manylinux1_x86_64.whl (1.2 MB)
       Collecting lightgbm==3.2.1
         Downloading lightgbm-3.2.1-py3-none-manylinux1_x86_64.whl (2.0 MB)
       Collecting Markdown==3.3.4
         Downloading Markdown-3.3.4-py3-none-any.whl (97 kB)
       Collecting MarkupSafe==1.1.1
         Downloading MarkupSafe-1.1.1-cp39-cp39-manylinux2010_x86_64.whl (32 kB)
       Collecting matplotlib==3.4.2
         Downloading matplotlib-3.4.2-cp39-cp39-manylinux1_x86_64.whl (10.3 MB)
       Collecting matplotlib-inline==0.1.2
         Downloading matplotlib_inline-0.1.2-py3-none-any.whl (8.2 kB)
       Collecting mistune==0.8.4
         Downloading mistune-0.8.4-py2.py3-none-any.whl (16 kB)
       Collecting mysqlclient==2.0.3
         Downloading mysqlclient-2.0.3.tar.gz (88 kB)
       Collecting nbclassic==0.2.7
         Downloading nbclassic-0.2.7-py3-none-any.whl (18 kB)
       Collecting nbclient==0.5.3
         Downloading nbclient-0.5.3-py3-none-any.whl (82 kB)
       Collecting nbconvert==6.0.7
         Downloading nbconvert-6.0.7-py3-none-any.whl (552 kB)
       Collecting nbformat==5.1.3
         Downloading nbformat-5.1.3-py3-none-any.whl (178 kB)
       Collecting nest-asyncio==1.5.1
         Downloading nest_asyncio-1.5.1-py3-none-any.whl (5.0 kB)
       Collecting notebook==6.3.0
         Downloading notebook-6.3.0-py3-none-any.whl (9.5 MB)
       Collecting numpy==1.19.4
         Downloading numpy-1.19.4-cp39-cp39-manylinux2010_x86_64.whl (14.5 MB)
       Collecting oauthlib==3.1.0
         Downloading oauthlib-3.1.0-py2.py3-none-any.whl (147 kB)
       Collecting openpyxl==3.0.7
         Downloading openpyxl-3.0.7-py2.py3-none-any.whl (243 kB)
       Collecting opt-einsum==3.3.0
         Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB)
       Collecting packaging==20.9
         Downloading packaging-20.9-py2.py3-none-any.whl (40 kB)
       Collecting pandas==1.1.4
         Downloading pandas-1.1.4-cp39-cp39-manylinux1_x86_64.whl (9.3 MB)
       Collecting pandocfilters==1.4.3
         Downloading pandocfilters-1.4.3.tar.gz (16 kB)
       Collecting parso==0.8.2
         Downloading parso-0.8.2-py2.py3-none-any.whl (94 kB)
       Collecting patsy==0.5.1
         Downloading patsy-0.5.1-py2.py3-none-any.whl (231 kB)
       Collecting pefile==2021.5.24
         Downloading pefile-2021.5.24.tar.gz (66 kB)
       Collecting pickleshare==0.7.5
         Downloading pickleshare-0.7.5-py2.py3-none-any.whl (6.9 kB)
       Collecting Pillow==8.2.0
         Downloading Pillow-8.2.0-cp39-cp39-manylinux1_x86_64.whl (3.0 MB)
       Collecting pipwin==0.5.1
         Downloading pipwin-0.5.1.tar.gz (8.8 kB)
       Collecting plotly==4.14.3
         Downloading plotly-4.14.3-py2.py3-none-any.whl (13.2 MB)
       Collecting prometheus-client==0.10.1
         Downloading prometheus_client-0.10.1-py2.py3-none-any.whl (55 kB)
       Collecting prompt-toolkit==3.0.18
         Downloading prompt_toolkit-3.0.18-py3-none-any.whl (367 kB)
       Collecting protobuf==3.17.0
         Downloading protobuf-3.17.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.0 MB)
       Collecting py4j==0.10.9
         Downloading py4j-0.10.9-py2.py3-none-any.whl (198 kB)
       Collecting pyasn1==0.4.8
         Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
       Collecting pyasn1-modules==0.2.8
         Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
       Collecting pycodestyle==2.7.0
         Downloading pycodestyle-2.7.0-py2.py3-none-any.whl (41 kB)
       Collecting pycparser==2.20
         Downloading pycparser-2.20-py2.py3-none-any.whl (112 kB)
       Collecting pygame==2.0.1
         Downloading pygame-2.0.1-cp39-cp39-manylinux1_x86_64.whl (11.8 MB)
       Collecting Pygments==2.9.0
         Downloading Pygments-2.9.0-py3-none-any.whl (1.0 MB)
       Collecting pyinstaller==4.4
         Downloading pyinstaller-4.4-py3-none-manylinux2014_x86_64.whl (1.5 MB)
       Collecting pyinstaller-hooks-contrib==2021.2
         Downloading pyinstaller_hooks_contrib-2021.2-py2.py3-none-any.whl (190 kB)
       Collecting pyjsparser==2.7.1
         Downloading pyjsparser-2.7.1.tar.gz (24 kB)
       Collecting PyMySQL==1.0.2
         Downloading PyMySQL-1.0.2-py3-none-any.whl (43 kB)
       Collecting pyparsing==2.4.7
         Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
       Collecting pypiwin32==223
         Downloading pypiwin32-223-py3-none-any.whl (1.7 kB)
       Collecting PyPrind==2.11.3
         Downloading PyPrind-2.11.3-py2.py3-none-any.whl (8.4 kB)
       Collecting pyrsistent==0.17.3
         Downloading pyrsistent-0.17.3.tar.gz (106 kB)
       Collecting pySmartDL==1.3.4
         Downloading pySmartDL-1.3.4-py3-none-any.whl (20 kB)
       Collecting pyspark==3.1.1
         Downloading pyspark-3.1.1.tar.gz (212.3 MB)
       Collecting python-dateutil==2.8.1
         Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
       Collecting pyttsx==1.1
         Downloading pyttsx-1.1.tar.gz (23 kB)
       Collecting pyttsx3==2.90
         Downloading pyttsx3-2.90-py3-none-any.whl (39 kB)
       Collecting pytz==2020.4
         Downloading pytz-2020.4-py2.py3-none-any.whl (509 kB)
       Collecting pywin32-ctypes==0.2.0
         Downloading pywin32_ctypes-0.2.0-py2.py3-none-any.whl (28 kB)
       Collecting pywinpty==1.0.1
         Downloading pywinpty-1.0.1.tar.gz (47 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 'error'
           ERROR: Command errored out with exit status 1:
            command: /app/.heroku/python/bin/python /app/.heroku/python/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpnij9ftxr
                cwd: /tmp/pip-install-w7oyrrfw/pywinpty
           Complete output (6 lines):
           Checking for Rust toolchain...
           
           Cargo, the Rust package manager, is not installed or is not on PATH.
           This package requires Rust and Cargo to compile extensions. Install it through
           the system's package manager or via https://rustup.rs/
           
           ----------------------------------------
       ERROR: Command errored out with exit status 1: /app/.heroku/python/bin/python /app/.heroku/python/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpnij9ftxr Check the logs for full command output.
 !     Push rejected, failed to compile Python app.
 !     Push failed

1 个答案:

答案 0 :(得分:0)

安装 pywinpty...

时出现问题
   Collecting pywinpty==1.0.1
     Downloading pywinpty-1.0.1.tar.gz (47 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 'error'
       ERROR: Command errored out with exit status 1:
        command: /app/.heroku/python/bin/python /app/.heroku/python/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpnij9ftxr
            cwd: /tmp/pip-install-w7oyrrfw/pywinpty
       Complete output (6 lines):
       Checking for Rust toolchain...
       
       Cargo, the Rust package manager, is not installed or is not on PATH.
       This package requires Rust and Cargo to compile extensions. Install it through
       the system's package manager or via https://rustup.rs/

Heroku 是一个 PaaS,这意味着代码不会在您的本地机器上运行,而是在 Linux VM 上的“云”中运行,这将不允许您安装 pywinpty。

Push rejected, fails Python App to Heroku