如何将 Python 模块部署到 Heroku?


假设你已经按照此步骤,在本地设置了 Python 3.6、Pipenv 和 Heroku CLI,并从 CLI 使用 Heroku 登录:https://devcenter.heroku.com/articles/getting-started-with-python#set-up.

你的应用程序需要一个 git 存储库,才能部署到 Heroku。你需要 cd 到你的 git repo 代码根目录。现在你需要使用以下命令创建 Heroku 应用程序

$ heroku create
Creating lit-bastion-5032 in organization heroku... done, stack is cedar-14

http://lit-bastion-5032.herokuapp.com/ | https://git.heroku.com/lit-bastion-5032.git

添加 Git 远程 Heroku

当你创建应用时,也会创建一个 git 远程(称为 Heroku)并将其与你的本地 git 存储库关联。Heroku 会为你的应用生成一个随机名称(在本例中为 lit-bastion-5032),或者你可以传递一个参数来指定自己的应用名称。

现在已经添加了一个远程,你可以使用以下命令将你的代码推送到 Heroku

$ git push heroku master
Counting objects: 232, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (217/217), done.
Writing objects: 100% (232/232), 29.64 KiB | 0 bytes/s, done.
Total 232 (delta 118), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: -----> Installing python-3.6.0
remote: -----> Installing requirements with latest pipenv...
remote:        Installing dependencies from Pipfile.lock...
remote:      $ python manage.py collectstatic --noinput
remote:        58 static files copied to '/app/gettingstarted/staticfiles', 58 post-processed.
remote:
remote: -----> Discovering process types
remote:        Procfile declares types -> web
remote:
remote: -----> Compressing...
remote:        Done: 39.3M
remote: -----> Launching...
remote:        Released v4
remote:        http://lit-bastion-5032.herokuapp.com/ deployed to Heroku
remote:
remote: Verifying deploy... done.
To [email protected]:lit-bastion-5032.git
 * [new branch]      master -> master
Note that you need to specify your requirements(third party modules you are importing) with their version numbers(or without if you need latest one) in the requirements.txt. For example,
Flask==0.8
Jinja2==2.6
Werkzeug==0.8.3
certifi==0.0.8
chardet==1.0.1

你可以在 Heroku python 文档中了解更多相关信息:https://devcenter.heroku.com/articles/python-pip

更新时间:2020 年 6 月 15 日

272 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告