我正在尝试做与Serving interactive bokeh figure on heroku相同的事情。但即使在阅读答案后,我也无法弄明白。
我克隆了散景git存储库并下载了数据。然后,通过执行命令
bokeh serve --show movies
(python文件位于movies子目录中)在git bash中,我可以在端口5006上本地查看应用程序。
但我真正想要的是将应用程序部署到互联网上。我正在尝试使用heroku来做到这一点。这是一个非烧瓶,非django应用程序。
对于procfile,我有
web: bokeh serve --port=$PORT --host=movies-rohan.herokuapp.com --host=* --address=0.0.0.0 --use-xheaders movies.py
关于这个的两个问题:
1)我应该指定端口号,还是将其保留为$ PORT?
2)我应该使用“--allow-websocket-origin =”而不是“--host”吗?这有什么不同吗?
然后是requirements.txt文件。据我了解,这列出了应用程序的依赖项。但我不知道如何格式化。任何人都可以提供requirements.txt文件的模板吗?作为样本requirements.txt,这看起来是否合理:
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
[packages]
bokeh = "*"
[requires]
python_version = "3.6"
除了python文件,proc文件和requirements.txt,还有什么必要吗? pipfile,pipfile.lock或procfile.windows怎么样?我的理解是pipfile是requirements.txt的替代品。
您不必定义端口号。
我认为你的Procfile应该包含这个命令:web: bokeh serve --port=$PORT --allow-websocket-origin=movies-rohan.herokuapp.com --address=0.0.0.0 --use-xheaders movies
我假设你的movies.py文件在movies文件夹中