【发布时间】:2014-10-18 08:37:10
【问题描述】:
我已经使用 Python Django 开发了一个应用程序并且它正在运行,我是 Python Django 的新手,现在我需要将它部署在 heroku 服务器上,有很多博客和网站,包括 heroku 网站,这些网站解释了如何部署 django 应用程序heroku 从头开始我还没有找到任何关于正在运行的应用程序的讨论
例如,他们都需要安装 django,这让我很困惑,
这是我的应用程序的文件夹结构:
myapp
|_my_app
| |_Settingd.py
| |_urls.py
| |_wsgi.py
|__webapp
|_statics(folder)
|_admin.py
|_models.py
|_views.py
应用程序正在本地连接到mysql服务器
问题:
现在我完全糊涂了,我该如何在 heroku 上部署我正在运行的应用程序?在下面提供的在 heroku 上部署应用程序的步骤中,哪些对我是强制性的,哪些我可以逃脱,根据我的文件夹结构,requirements.txt 或 Procfile 的位置应该在哪里,它们的内容应该是什么?
https://devcenter.heroku.com/articles/getting-started-with-django
我必须安装 virtualenv 吗?是的,我应该在哪里运行这个命令(在哪个文件夹中) 我想我不必为 django 安装 django 或任何数据库 api 或驱动程序?因为它们都已经安装了
【问题讨论】:
-
@rajasimon 也许我和其他初学者的答案对你来说并不那么明显,所以如果可以的话,请给出一个信息丰富的答案
-
我投了反对票,因为您实际上链接到页面,其中 exact 回答了您的问题。只需按照那里的说明进行操作即可。
-
@DanielRoseman 我认为对于初学者来说文档不清楚,特别是当您尝试在 Windows 机器上关注页面时,所以如果我在运行的 Django 应用程序的根目录中定义 Procfile 和要求,让我们重新表述一下自己,我仍然需要虚拟环境吗?我真的不知道它是干什么用的
-
@Siavosh 该文件清楚地写着
Start a Django app inside a Virtualenv,如果你正在按照那个教程..pip install django-toolbelt。我想你在这里混淆了为什么它再次安装 django ? -
@Siavosh 您不需要在 Heroku 上使用
virtualenv。 Heroku 只需要您在 git 中的项目以及requirements.txt文件,该文件应列出所有项目依赖项,包括 Django。换句话说,Heroku 是一个virtualenv,您将在其中使用 git 部署您的应用程序。您需要toolbelt才能使用命令行连接到 Heroku。要使用 MySQL 数据库,您需要获取任何像clearDB MySQL这样的附加组件,一旦您添加了一个附加组件,Heroku 就会设置一些环境变量,可以使用教程中提到的dj_database_url读取这些环境变量。
标签: django heroku django-deployment