首页 > 解决方案 > Heroku 应用程序无法运行,产生两个错误:错误 7 和错误 98

问题描述

我正在尝试仅使用 Plotly Go 情节来运行 Heroku 应用程序的第一遍。我可以在本地运行它,但是当我尝试在 Heroku 上运行它时出现此错误。

我的 Python 文件 (app.py) 如下所示:

import plotly.graph_objects as go
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import plotly.graph_objects as goimport dash
import dash_core_components as dcc
import dash_html_components as html

# Read data from excel and create figure.

app = dash.Dash()
server = app.server
app.layout = html.Div([
    dcc.Graph(figure=fig1)
])

app.run_server(debug=True, use_reloader=False)

我的 Procfile 看起来像这样:

web: gunicorn app:server

我的Requirements.txt 看起来是这样的:

Brotli==1.0.9
click==8.0.0
colorama==0.4.4
cycler==0.10.0
dash==1.20.0
dash-core-components==1.16.0
dash-html-components==1.1.3
dash-renderer==1.9.1
dash-table==4.11.3
et-xmlfile==1.1.0
Flask==2.0.0
Flask-Compress==1.9.0
future==0.18.2
gunicorn==20.0.4
itsdangerous==2.0.0
Jinja2==3.0.0
kiwisolver==1.3.1
MarkupSafe==2.0.0
matplotlib==3.4.2
numpy==1.20.3
openpyxl==3.0.7
pandas==1.2.4
Pillow==8.2.0
plotly==4.14.3
pyparsing==2.4.7
python-dateutil==2.8.1
pytz==2021.1
retrying==1.3.3
six==1.16.0
Werkzeug==2.0.0
xlrd==2.0.1

Heroku错误是这样的:

2021-05-15T04:38:04.073197+00:00 app[web.1]: self.load_wsgi()
2021-05-15T04:38:04.073197+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
2021-05-15T04:38:04.073197+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2021-05-15T04:38:04.073198+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/base.py", line 67, in wsgi
2021-05-15T04:38:04.073198+00:00 app[web.1]: self.callable = self.load()
2021-05-15T04:38:04.073199+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
2021-05-15T04:38:04.073199+00:00 app[web.1]: return self.load_wsgiapp()
2021-05-15T04:38:04.073199+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
2021-05-15T04:38:04.073200+00:00 app[web.1]: return util.import_app(self.app_uri)
2021-05-15T04:38:04.073200+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/util.py", line 358, in import_app
2021-05-15T04:38:04.073200+00:00 app[web.1]: mod = importlib.import_module(module)
2021-05-15T04:38:04.073201+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/importlib/__init__.py", line 127, in import_module
2021-05-15T04:38:04.073202+00:00 app[web.1]: return _bootstrap._gcd_import(name[level:], package, level)
2021-05-15T04:38:04.073202+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
2021-05-15T04:38:04.073203+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
2021-05-15T04:38:04.073203+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
2021-05-15T04:38:04.073203+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
2021-05-15T04:38:04.073204+00:00 app[web.1]: File "<frozen importlib._bootstrap_external>", line 855, in exec_module
2021-05-15T04:38:04.073204+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
2021-05-15T04:38:04.073204+00:00 app[web.1]: File "/app/app.py", line 69, in <module>
2021-05-15T04:38:04.073205+00:00 app[web.1]: app.run_server(debug=True, use_reloader=False)
2021-05-15T04:38:04.073205+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/dash/dash.py", line 1718, in run_server
2021-05-15T04:38:04.073206+00:00 app[web.1]: self.server.run(host=host, port=port, debug=debug, **flask_run_options)
2021-05-15T04:38:04.073206+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/flask/app.py", line 920, in run
2021-05-15T04:38:04.073206+00:00 app[web.1]: run_simple(t.cast(str, host), port, self, **options)
2021-05-15T04:38:04.073207+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 1008, in run_simple
2021-05-15T04:38:04.073207+00:00 app[web.1]: inner()
2021-05-15T04:38:04.073208+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 948, in inner
2021-05-15T04:38:04.073208+00:00 app[web.1]: srv = make_server(
2021-05-15T04:38:04.073208+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 780, in make_server
2021-05-15T04:38:04.073209+00:00 app[web.1]: return ThreadedWSGIServer(
2021-05-15T04:38:04.073209+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 686, in __init__
2021-05-15T04:38:04.073209+00:00 app[web.1]: super().__init__(server_address, handler)  # type: ignore
2021-05-15T04:38:04.073210+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/socketserver.py", line 452, in __init__
2021-05-15T04:38:04.073210+00:00 app[web.1]: self.server_bind()
2021-05-15T04:38:04.073210+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/http/server.py", line 138, in server_bind
2021-05-15T04:38:04.073211+00:00 app[web.1]: socketserver.TCPServer.server_bind(self)
2021-05-15T04:38:04.073211+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/socketserver.py", line 466, in server_bind
2021-05-15T04:38:04.073211+00:00 app[web.1]: self.socket.bind(self.server_address)
2021-05-15T04:38:04.073212+00:00 app[web.1]: OSError: [Errno 98] Address already in use
2021-05-15T04:38:04.073387+00:00 app[web.1]: [2021-05-15 04:38:04 +0000] [15] [INFO] Worker exiting (pid: 15)
2021-05-15T04:38:04.263801+00:00 app[web.1]: Dash is running on http://127.0.0.1:50215/
2021-05-15T04:38:04.263803+00:00 app[web.1]:
2021-05-15T04:38:04.264238+00:00 app[web.1]: * Serving Flask app 'gunicorn' (lazy loading)
2021-05-15T04:38:04.264292+00:00 app[web.1]: * Environment: production
2021-05-15T04:38:04.264391+00:00 app[web.1]: WARNING: This is a development server. Do not use it in a production deployment.
2021-05-15T04:38:04.264465+00:00 app[web.1]: Use a production WSGI server instead.
2021-05-15T04:38:04.264520+00:00 app[web.1]: * Debug mode: on
2021-05-15T04:38:04.276929+00:00 app[web.1]: [2021-05-15 04:38:04 +0000] [7] [ERROR] Exception in worker process
2021-05-15T04:38:04.276931+00:00 app[web.1]: Traceback (most recent call last):
2021-05-15T04:38:04.276943+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
2021-05-15T04:38:04.276943+00:00 app[web.1]: worker.init_process()
2021-05-15T04:38:04.276944+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/workers/base.py", line 119, in init_process
2021-05-15T04:38:04.276944+00:00 app[web.1]: self.load_wsgi()
2021-05-15T04:38:04.276944+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
2021-05-15T04:38:04.276945+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2021-05-15T04:38:04.276945+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/base.py", line 67, in wsgi
2021-05-15T04:38:04.276945+00:00 app[web.1]: self.callable = self.load()
2021-05-15T04:38:04.276946+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
2021-05-15T04:38:04.276946+00:00 app[web.1]: return self.load_wsgiapp()
2021-05-15T04:38:04.276946+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
2021-05-15T04:38:04.276947+00:00 app[web.1]: return util.import_app(self.app_uri)
2021-05-15T04:38:04.276947+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/util.py", line 358, in import_app
2021-05-15T04:38:04.276948+00:00 app[web.1]: mod = importlib.import_module(module)
2021-05-15T04:38:04.276948+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/importlib/__init__.py", line 127, in import_module
2021-05-15T04:38:04.276949+00:00 app[web.1]: return _bootstrap._gcd_import(name[level:], package, level)
2021-05-15T04:38:04.276949+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
2021-05-15T04:38:04.276950+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
2021-05-15T04:38:04.276950+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
2021-05-15T04:38:04.276950+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
2021-05-15T04:38:04.276951+00:00 app[web.1]: File "<frozen importlib._bootstrap_external>", line 855, in exec_module
2021-05-15T04:38:04.276951+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
2021-05-15T04:38:04.276951+00:00 app[web.1]: File "/app/app.py", line 69, in <module>
2021-05-15T04:38:04.276952+00:00 app[web.1]: app.run_server(debug=True, use_reloader=False)
2021-05-15T04:38:04.276952+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/dash/dash.py", line 1718, in run_server
2021-05-15T04:38:04.276953+00:00 app[web.1]: self.server.run(host=host, port=port, debug=debug, **flask_run_options)
2021-05-15T04:38:04.276953+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/flask/app.py", line 920, in run
2021-05-15T04:38:04.276953+00:00 app[web.1]: run_simple(t.cast(str, host), port, self, **options)
2021-05-15T04:38:04.276954+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 1008, in run_simple
2021-05-15T04:38:04.276954+00:00 app[web.1]: inner()
2021-05-15T04:38:04.276955+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 948, in inner
2021-05-15T04:38:04.276955+00:00 app[web.1]: srv = make_server(
2021-05-15T04:38:04.276955+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 780, in make_server
2021-05-15T04:38:04.276956+00:00 app[web.1]: return ThreadedWSGIServer(
2021-05-15T04:38:04.276956+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/werkzeug/serving.py", line 686, in __init__
2021-05-15T04:38:04.276956+00:00 app[web.1]: super().__init__(server_address, handler)  # type: ignore
2021-05-15T04:38:04.276957+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/socketserver.py", line 452, in __init__
2021-05-15T04:38:04.276958+00:00 app[web.1]: self.server_bind()
2021-05-15T04:38:04.276958+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/http/server.py", line 138, in server_bind
2021-05-15T04:38:04.276958+00:00 app[web.1]: socketserver.TCPServer.server_bind(self)
2021-05-15T04:38:04.276959+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/socketserver.py", line 466, in server_bind
2021-05-15T04:38:04.276959+00:00 app[web.1]: self.socket.bind(self.server_address)
2021-05-15T04:38:04.276959+00:00 app[web.1]: OSError: [Errno 98] Address already in use
2021-05-15T04:38:04.277064+00:00 app[web.1]: [2021-05-15 04:38:04 +0000] [7] [INFO] Worker exiting (pid: 7)
2021-05-15T04:38:04.575839+00:00 app[web.1]: [2021-05-15 04:38:04 +0000] [4] [INFO] Shutting down: Master
2021-05-15T04:38:04.575993+00:00 app[web.1]: [2021-05-15 04:38:04 +0000] [4] [INFO] Reason: Worker failed to boot.
2021-05-15T04:38:04.698885+00:00 heroku[web.1]: Process exited with status 3
2021-05-15T04:38:04.801270+00:00 heroku[web.1]: State changed from up to crashed
2021-05-15T05:14:27.898553+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=anshuman-mercury.herokuapp.com request_id=32e2d0e3-d88c-478b-9e75-29e0d41bdfce fwd="128.106.73.27" dyno= connect= service= status=503 bytes= protocol=https
2021-05-15T05:14:28.244738+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=anshuman-mercury.herokuapp.com request_id=25ae9c12-aabd-438c-8b9b-69f139d7f6c7 fwd="128.106.73.27" dyno= connect= service= status=503 bytes= protocol=https

我用谷歌搜索,错误 98,地址已在使用中并尝试了这个:

在此处输入图像描述

但是在我在 CMD 上运行“neststat”命令后什么也没发生。

我试过这个:

在此处输入图像描述

但它说,“ps 不被识别为内部或外部命令”。我有 Windows 10。

任何帮助将不胜感激。

标签: pythonheroku

解决方案


推荐阅读