在Heroku上部署Django cms

时间:2013-07-07 15:18:38

标签: django heroku django-cms

我正在尝试在Heruku上部署Django CMS。 我按照https://devcenter.heroku.com/articles/git的说明进行操作 - 但是当我运行最后一个命令时,这就是结果:

(web1)users-imac:1web user$ git push heroku master
Counting objects: 453, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (439/439), done.
Writing objects: 100% (453/453), 1.21 MiB | 105 KiB/s, done.
Total 453 (delta 30), reused 0 (delta 0)

-----> Removing .DS_Store files

! Push rejected, no Cedar-supported app detected

To git@heroku.com:intense-oasis-8026.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:intense-oasis-8026.git'

所以我猜错了,不知道是什么。

那些我的heroku登录输出:

 2013-07-07T14:20:41.610222+00:00 heroku[api]: Enable Logplex by alex.garulli@gmail.com
 2013-07-07T14:20:41.623083+00:00 heroku[api]: Release v2 created by alex.garulli@gmail.com
 2013-07-07T14:21:18+00:00 heroku[slug-compiler]: Slug compilation started
 2013-07-07T14:21:21+00:00 heroku[slug-compiler]: Slug compilation failed: no Cedar-supported app detected
 2013-07-07T14:22:25.296159+00:00 heroku[router]: at=info code= desc="Blank app"    method=GET path=/ host=intense-oasis-8026.herokuapp.com fwd="86.161.229.49" dyno= connect=   service= status=502 bytes=
 2013-07-07T14:22:25.474698+00:00 heroku[router]: at=info code= desc="Blank app" method=GET path=/favicon.ico host=intense-oasis-8026.herokuapp.com fwd="86.161.229.49" dyno= connect= service= status=502 bytes=
 2013-07-07T21:53:38.496649+00:00 heroku[router]: at=info code= desc="Blank app" method=GET path=/ host=intense-oasis-8026.herokuapp.com fwd="120.168.1.115" dyno= connect= service= status=502 bytes=
 2013-07-07T21:53:48.291460+00:00 heroku[router]: at=info code= desc="Blank app" method=GET path=/favicon.ico host=intense-oasis-8026.herokuapp.com fwd="120.168.1.115" dyno= connect= service= status=502 bytes=
 2013-07-07T21:53:51.282218+00:00 heroku[router]: at=info code= desc="Blank app" method=GET path=/favicon.ico host=intense-oasis-8026.herokuapp.com fwd="120.168.1.115" dyno= connect= service= status=502 bytes=
 2013-07-08T18:29:16+00:00 heroku[slug-compiler]: Slug compilation started
 2013-07-08T18:29:17+00:00 heroku[slug-compiler]: Slug compilation failed: no Cedar-  supported app detected

好的,我的Procfile工作,工头开始

20:30:16 web.1  | started with pid 13580
20:30:16 web.1  | /usr/local/foreman/bin/foreman-runner: line 41: exec: gunicorn: not  found
20:30:16 web.1  | exited with code 127 
20:30:16 system | sending SIGTERM to all processes
SIGTERM received

但是git push heroku master的结果相同

更新

我想我的git push heroku master工作了......或者至少加载了很多东西......但是我知道我的页面已经有了

  
    

应用程序错误     应用程序中发生错误,无法提供您的页面。请稍后再试一次>>

         

如果您是应用程序所有者,请查看日志以获取详细信息。

  

不知道该怎么做....

更新

抱歉,但无法将其推上heroku

您可以在https://bitbucket.org/agarulli/trydj/src

查看我的所有代码

有什么想法吗?

4 个答案:

答案 0 :(得分:3)

确保 gunicorn& dj-database-url 在您的requirements.txt文件中,并将其添加到settings.py文件中:

INSTALLED_APPS = (
    ...
    'gunicorn',
    ...
)

import dj_database_url
DATABASES['default'] = dj_database_url.config()

选择一个&改变您的Procfile,如下所示:

web: gunicorn YOUR_PROJECT_NAME.wsgi -b 0.0.0.0:$PORT

(将YOUR_PROJECT_NAME更改为您的项目名称)

web: python manage.py runserver 0.0.0.0:$PORT --noreload

(如果您不想使用Gunicorn服务器)。

使用Virtualenv运行以下命令重新创建新的存储库和新的雪松:

workon YOUR_PROJECT
pip freeze > requirements.txt
rm -rf .git
git init
git add .
git commit -am "YOUR COMMIT"
heroku create --stack cedar
git push heroku master

使用此命令同步数据库:

heroku run python manage.py syncdb

打开您的申请:

heroku open

答案 1 :(得分:0)

这是因为Heroku无法理解这是什么类型的应用程序,或者您无法访问该git repo。

您需要做的是将SSH密钥添加到您的帐户以使其正常工作,因为这可能是问题所在。

如果这不起作用,请尝试变基。

如果您将Heroku配置正确,是否可以向我们提供有关您的配置的更多信息?如果你完全是git的新手,那么我建议你在尝试之前了解它是如何工作的。

另外,请务必将requirements.txt发送到heroku。

答案 2 :(得分:0)

您的项目根文件夹中是否有requirements.txt?没有它,Heroku将无法理解你想要安装Python应用程序。

答案 3 :(得分:0)

确保您已在计算机上设置了SSH密钥,如本文所述:https://devcenter.heroku.com/articles/keys然后您可以按照以下文章:https://devcenter.heroku.com/articles/django在Heroku上部署Django。

你能分享heroku logs命令的输出吗?