2

Procfileを介してHerokuでDjango1.4アプリを実行するのに行き詰まっています。関連するすべての投稿を読みましたが、Procfileに正しく名前を付けたので、これは大文字と小文字を区別する関連の問題ではないと確信しています。これが私のプロジェクト構造です。Procfileがmanage.pyと同じレベルにあることに注意してください

.
├── README.md
├── docs
├── project
│   ├── Procfile
│   ├── client
│   │   ├── __init__.py
│   │   ├── __init__.pyc
│   │   ├── models.py
│   │   ├── templates
│   │   │   └── welcome.html
│   │   ├── tests.py
│   │   ├── views.py
│   │   └── views.pyc
│   ├── manage.py
│   └── wings
│       ├── __init__.py
│       ├── __init__.pyc
│       ├── settings.py
│       ├── settings.pyc
│       ├── urls.py
│       ├── urls.pyc
│       ├── wsgi.py
│       └── wsgi.pyc
├── requirements.txt
├── static
│   ├── css
│   ├── images
│   └── js
├── tests
└── uploads

Procfileは次のとおりです。

web:python manage.py runserver

ここでは、ローカルで実行しているフォアマンの出力(正常に動作します)

10:29:28 web.1     | started with pid 595

私はこれをherokuへのプッシュで取得しています:

Procfile declares types -> (none)

herokuツールベルトを介してスケーリングしようとしています:

$ heroku ps:scale web=1 --app myapp
Scaling web processes... failed
!    Record not found.

私は常にWeb経由でアプリを作成するため、常に--app引数を指定する必要があります。アプリの作成方法に関連する問題がある可能性がありますか?

私も次のことを試しました:

MacBook-Pro-de-Sergio:myapp sergio$ heroku run python project/manage.py runserver
Running `python project/manage.py runserver` attached to terminal... up, run.1
Validating models...

0 errors found
Django version 1.4, using settings 'wings.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

これは私のアプリのログです:

2012-07-18T09:18:51+00:00 heroku[run.1]: Starting process with command `python       project/manage.py runserver`
2012-07-18T09:18:51+00:00 heroku[run.1]: State changed from starting to up
2012-07-18T09:19:16+00:00 heroku[router]: Error H14 (No web processes running) -> GET peoplewings.herokuapp.com/ dyno= queue= wait= service= status=503 bytes=
2012-07-18T09:19:16+00:00 heroku[router]: Error H14 (No web processes running) -> GET peoplewings.herokuapp.com/favicon.ico dyno= queue= wait= service= status=503 bytes=

答え

Neilが指摘したように、Procfileはgitリポジトリのルートにあるはずです。また、デフォルトのWebサーバーが127.0.0.1:8000を指しているため、Procfileのホストとポートを設定する必要がありました。これはherokuでは機能しません。

web: python project/manage.py runserver 0.0.0.0:$PORT
4

2 に答える 2

6

Procfile は、Heroku にプッシュされる git リポジトリのルートにある必要があります。

于 2012-07-18T09:31:36.653 に答える
3

レコード名とコンテンツの間のスペースは重要なようです:

使用する:

web: python manage.py runserver

ではない

web:python manage.py runserver

于 2013-02-15T14:12:57.013 に答える