在heroku上部署django mysql无法正常工作。我应该尝试亚马逊EB吗?

时间:2014-03-15 18:31:53

标签: heroku amazon-web-services django-deployment

我花了一周的时间尝试从我的mac osx上部署Heroku上的Django应用程序。我经历了一系列的反复试验,终于得出结论,我应该放弃。作为背景,我使用bitbucket和mysql。我读到Heroku很容易使用,大多数django开发人员建议像我这样的初学者应该使用Heroku和Amazon S3。所以我接受了这个建议并开始在Heroku上部署我的django民意调查应用程序。后来我发现Heroku与PosgreSQL配合得很好但是几乎没有关于如何使用mysql的文档。我从一开始就遇到了麻烦,上传我的应用程序并忽略更改我的settings.py文件中的数据库设置。我希望它可能会起作用:)但遗憾的是情况并非如此,所以我决定通过安装PosgreSQL(我不熟悉)将我的数据库从mysql更改为PosgreSQL,这并没有解决我的问题。

我尝试在http://www.enterprisedb.com/products-services-training/pgdownload#osx

安装postgresql-9.3.3-1-osx

但我仍然无法部署:

raise ImproperlyConfigured("Error loading psycopg2 module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No module named psycopg2

所以我尝试安装psycopg2,它给了我更多关于pg-config的错误:

Command python setup.py egg_info failed with error code 1 in /private/var/folders/m3/_ymmjf2s74g9fvx44dysy_v80000gn/T/pip_build_vantran/psycopg2
Storing debug log for failure in /Users/vantran/.pip/pip.log

总而言之,我放弃了使用Heroku的希望。我必须相信,有很多人在那里有类似的情况在部署他们无法让Heroku工作的地方。 * 我希望Heroku读取这个*

所以我对django部署大师的问题,我真的需要一些关于如何部署我的应用程序的指导建议。请你帮助我好吗?理想情况下,我喜欢使用django和mysql。我听说过亚马逊EB,但在研究了这个问题之后,似乎还有很多用户使用弹性beanstalk部署了一些问题。我实际上尝试安装EB,但是按照亚马逊网站上的说明我得到了这个提示。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我在尝试将基本应用程序部署到Heroku时收到的错误与django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No module named psycopg2相同。我没有使用PostgreSQL,但我相信它是Heroku工具带的依赖。问题可能是当您尝试使用Heroku的文档中指定的pip install -r requirements --allow-all-external来构建virtualenv时,它并没有引入psycopg2。我不确定为什么会这样。

修复方法是通过运行psycopg2手动强制安装{virt}的virtualevn,以便忽略本地路径上可用的内容。

我知道这对你来说可能为时已晚,但希望它可以帮助别人。