利用Heroku部署Django web应用

Heroku网站介绍

Heroku是一个基于Web的平台,可以让你免费部署Web应用程序。Heroku是老牌的云平台之一,最初它仅支持Ruby,但后来增加了对Java、Node.js、Scala、Clojure、Python等语言的支持。

Heroku注册

登录官方网站:https://www.heroku.com/,点击注册按钮进行免费账号注册。 输入图片说明

注意:Heroku账号的注册建议使用翻墙软件后访问,要不然可能会遇到无法加载图片验证的问题,而无法注册成功。

heroku命令行工具安装

接下来需要安装Heroku-cli命令行工具,请访问网址: https://devcenter.heroku.com/articles/heroku-cli 下面以Ubuntu系统为例,在终端输入下面命令来安装

# 同样建议使用翻墙软件后再输入命令操作
$ sudo add-apt-repository "deb https://cli-assets.heroku.com/branches/stable/apt ./"
$ curl -L https://cli-assets.heroku.com/apt/release.key | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install heroku

Windows和Mac操作系统,请根据自己的操作系统按官方的文档说明来操作。

部署Django应用程序

在部署之前请检查是否正确安装了Django需要的第三方包,并且创建包含包列表的“requirements.txt”文件。 另外还需要有指定Python版本的“runtime.txt”文件,以及指定heroku启动那些进程的“Procfile”文件。 最后修改“wsgi.py”文件和"settings.py",在文件中增加Heroku的环境设置。 还有heroku的部署使用到了git命令的推送功能,所以需要将Django项目先提交到Git版本管理仓库。

完成上面的一系列准备工作后,终于可以开始将项目部署到Heroku服务器中。

在终端中输入下面命令:

$ heroku login

接下来需要输入刚刚注册成功的账号和密码,输出如下:

Enter your Heroku credentials.
Email: test@test.com
Password (typing will be hidden): 
Logged in as test@test.com

继续在项目所在的根目录下,输入下面命令:

$ heroku create

命令执行成功后会显示如下:

--snip(略)--
Git remote heroku added

继续输入下面命令,这个命令让git将项目的master分支的代码推送到heroku容器中,heroku会自动创建项目:

$ git push heroku master

输出如下:

对象计数中: 19, 完成.
Delta compression using up to 4 threads.
压缩对象中: 100% (18/18), 完成.
写入对象中: 100% (19/19), 3.30 KiB | 0 bytes/s, 完成.
Total 19 (delta 13), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Python app detected
remote:      $ pip install -r requirements.txt
--snip(略)--
remote:        https://learn-log4kyle.herokuapp.com/ deployed to Heroku
remote: 
remote: Verifying deploy.... done.
To https://git.heroku.com/learn-log4kyle.git
   7956bd0..fb845a8  master -> master

注意: 这里如果遇到错误,提示修改DISABLE_COLLECTSTATIC的设置的话,就执行下面命令来更改设置:

$ heroku config:set DISABLE_COLLECTSTATIC=1

最后,通过可以使用heroku open命令在浏览器中打开刚刚部署成功的应用程序。

$ heroku open 

小结

本文只是简单介绍如何将Django开发的web应用程序部署到heroku网站上,还有很多heroku的功能没有涉及。 而且Heroku的部署流程以后可能会调整,所以请通过阅读Heroku的python相关官方文档来了解更多。

参考文献:

《Python编程从入门到实践》 Eric Matthes 著

转载于:https://my.oschina.net/u/3247573/blog/832351

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值