使用Github资源库将Django应用程序部署到Heroku上
Heroku是一个免费的托管云服务提供商。我们可以使用我们的免费dynos在云上部署我们的应用程序。唯一的缺点是,一旦应用程序休眠,它就会丢失所有的数据,而且在免费动态器上托管时,它不能一次处理多个请求。
首先,为了进一步开展工作,你需要准备好这两样东西
1.Django应用程序
2.Heroku账户
我们需要对Django应用程序做一些修改,使其准备好被托管。
准备Django应用程序:
- 使用以下命令安装gunicorn库
pip install gunicorn
- 创建一个没有任何扩展名的文件,并将其命名为Procfile
按以下方式填写Procfile
web: gunicorn app_name.wsgi --log-file -
Procfile
- 创建一个requirements.txt文件,并在其中转储所有的依赖项。
你可以使用下面的命令来获取所有的依赖项到requirements.txt中。
pip freeze > requirements.txt
requirements.txt
- 创建一个_runtime.txt _,并提及你开发Django应用所使用的python版本
python-full version
runtime.txt
注意:你需要在Django应用程序之外创建所有这些文件,即。在manage.py文件的同一位置。
现在将你的Django应用程序推送到Github仓库,并保持它的准备状态。
我们假设你知道如何将你的代码推送到GitHub仓库。
部署到Heroku:
首先,你需要有一个Heroku账户,如果你没有,就创建一个。
- 登录到您的Heroku账户
- 点击新建->创建新的应用程序。
- 选择你的应用程序名称和地区,然后点击创建应用程序
- 选择你的应用程序,进入部署菜单,你可以看到连接Github和Heroku应用程序的选项。
部署选项:
- 点击连接到GitHub并授权你的GitHub账户
- 授权后,它将要求你输入你想连接的版本库和要部署的分支。
连接你的存储库
- 你可以启用自动部署,以保持你的提交的最新变化,否则你可以在任何时候用最新的变化进行部署。
部署
- 一旦你点击Deploy Branch,你的应用程序就会被部署。
部署的初始化
最后,你的Django应用得到了部署。
Finally deployed!!!
- 现在你的应用程序将可以在https://YourAppName.herokuapp.com_。
- 如果你选择了自动部署,你的所有提交都会被部署,否则你需要部署你的修改。
- 最好的部分是,如果任何部署不工作,你可以回滚到你想要的任何版本,只需点击 “活动 “标签中的回滚选项。