0

昨日、Heroku で Django を使い始めるための Heroku Dev Center チュートリアルに取り組みました。そのチュートリアルを使用して、「oldtestapp」というアプリを作成しました...

今日、heroku.com にアクセスしてログインし、oldtestapp を削除しました。Heroku に移行したい既存の Django プロジェクトがあります。Procfile と requirements.txt を oldtestapp から新しいアプリのルート ディレクトリ (manage.py と同じディレクトリ) にコピーしました。Procfile を変更しました。「oldtestapp.wsgi」と表示されていたところを「newapp.wsgi」に変更しました。ここで、newapp は Django アプリケーションの名前です。そのプロジェクトのルート ディレクトリ (manage.py と同じディレクトリ) で git bash を開き、すべてを git と heroku に正常にプッシュしました。

を行ったときに、内部サーバー エラーが発生しましたheroku open。ログは以下のとおりです (メールアドレスを emailaddress@email.com に置き換えました):

$ heroku logs
2013-07-17T23:09:55+00:00 heroku[slug-compiler]: Slug compilation started
2013-07-17T23:09:56+00:00 heroku[slug-compiler]: Slug compilation failed: no Ced
ar-supported app detected
2013-07-17T23:15:43+00:00 heroku[slug-compiler]: Slug compilation started
←[36m2013-07-17T23:17:07.691491+00:00 heroku[api]:←[0m Scale to web=1 by emailadd
ress@email.com
←[36m2013-07-17T23:17:07.728257+00:00 heroku[api]:←[0m Deploy e6cec10 by emailadd
ress@email.com
←[36m2013-07-17T23:17:07.775009+00:00 heroku[api]:←[0m Release v3 created by emailaddress@email.com
←[36m2013-07-17T23:17:07.812132+00:00 heroku[api]:←[0m Deploy e6cec10 by emailadd
ress@email.com
2013-07-17T23:17:08+00:00 heroku[slug-compiler]: Slug compilation finished
←[33m2013-07-17T23:17:15.119247+00:00 heroku[web.1]:←[0m Starting process with c
ommand `gunicorn oldtestapp.wsgi`
←[33m2013-07-17T23:17:17.533626+00:00 app[web.1]:←[0m 2013-07-17 23:17:17 [2] [I
NFO] Listening at: http://0.0.0.0:43432 (2)
←[33m2013-07-17T23:17:17.535035+00:00 app[web.1]:←[0m 2013-07-17 23:17:17 [2] [I
NFO] Using worker: sync
←[33m2013-07-17T23:17:17.531496+00:00 app[web.1]:←[0m 2013-07-17 23:17:17 [2] [I
NFO] Starting gunicorn 17.5
←[33m2013-07-17T23:17:17.567349+00:00 app[web.1]:←[0m 2013-07-17 23:17:17 [7] [I
NFO] Booting worker with pid: 7
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/arbiter.py", line 473, in spawn_worker
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m     worker.init_process()
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m     self.wsgi = self.app.w
sgi()
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m 2013-07-17 23:17:17 [7] [E
RROR] Exception in worker process:
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m Traceback (most recent cal
l last):
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_proce
ss
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/base.py", line 115, in wsgi
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m ImportError: No module nam
ed oldtestapp.wsgi
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/arbiter.py", line 473, in spawn_worker
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m     __import__(module)
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m Traceback (most recent cal
l last):
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 33, in load
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m     return util.import_app
(self.app_uri)
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/util.py", line 353, in import_app
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/base.py", line 115, in wsgi
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_proce
ss
←[33m2013-07-17T23:17:17.618566+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/util.py", line 353, in import_app
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m     self.callable = self.l
oad()
←[33m2013-07-17T23:17:17.618566+00:00 app[web.1]:←[0m     return util.import_app
(self.app_uri)
←[33m2013-07-17T23:17:17.618566+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 33, in load
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m     worker.init_process()
←[33m2013-07-17T23:17:17.618202+00:00 app[web.1]:←[0m     self.callable = self.l
oad()
←[33m2013-07-17T23:17:17.620526+00:00 app[web.1]:←[0m 2013-07-17 23:17:17 [7] [I
NFO] Worker exiting (pid: 7)
←[33m2013-07-17T23:17:17.618566+00:00 app[web.1]:←[0m     __import__(module)
←[33m2013-07-17T23:17:17.618566+00:00 app[web.1]:←[0m ImportError: No module nam
ed oldtestapp.wsgi
←[33m2013-07-17T23:17:17.618410+00:00 app[web.1]:←[0m     self.wsgi = self.app.w
sgi()
←[33m2013-07-17T23:17:17.699855+00:00 heroku[web.1]:←[0m State changed from star
ting to up
←[33m2013-07-17T23:17:18.100018+00:00 app[web.1]:←[0m 2013-07-17 23:17:18 [2] [I
NFO] Shutting down: Master
←[33m2013-07-17T23:17:18.104067+00:00 app[web.1]:←[0m 2013-07-17 23:17:18 [2] [I
NFO] Reason: Worker failed to boot.
←[33m2013-07-17T23:17:19.804175+00:00 heroku[web.1]:←[0m Process exited with sta
tus 3
←[33m2013-07-17T23:17:24.727149+00:00 heroku[web.1]:←[0m Starting process with c
ommand `gunicorn oldtestapp.wsgi`
←[33m2013-07-17T23:17:25.684787+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [2] [I
NFO] Starting gunicorn 17.5
←[33m2013-07-17T23:17:25.685477+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [2] [I
NFO] Listening at: http://0.0.0.0:10242 (2)
←[33m2013-07-17T23:17:25.689543+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [2] [I
NFO] Using worker: sync
←[33m2013-07-17T23:17:25.698842+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [7] [I
NFO] Booting worker with pid: 7
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [7] [E
RROR] Exception in worker process:
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/arbiter.py", line 473, in spawn_worker
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/base.py", line 115, in wsgi
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m     worker.init_process()
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m     __import__(module)
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m     self.callable = self.l
oad()
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_proce
ss
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/arbiter.py", line 473, in spawn_worker
←[33m2013-07-17T23:17:25.717331+00:00 app[web.1]:←[0m     return util.import_app
(self.app_uri)
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m Traceback (most recent cal
l last):
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m     self.wsgi = self.app.w
sgi()
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m     self.callable = self.l
oad()
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m Traceback (most recent cal
l last):
←[33m2013-07-17T23:17:25.717331+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/util.py", line 353, in import_app
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 33, in load
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_proce
ss
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/base.py", line 115, in wsgi
←[33m2013-07-17T23:17:25.716897+00:00 app[web.1]:←[0m     return util.import_app
(self.app_uri)
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m     worker.init_process()
←[33m2013-07-17T23:17:25.717331+00:00 app[web.1]:←[0m     __import__(module)
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/util.py", line 353, in import_app
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m     self.wsgi = self.app.w
sgi()
←[33m2013-07-17T23:17:25.717176+00:00 app[web.1]:←[0m ImportError: No module nam
ed oldtestapp.wsgi
←[33m2013-07-17T23:17:25.717331+00:00 app[web.1]:←[0m ImportError: No module nam
ed oldtestapp.wsgi
←[33m2013-07-17T23:17:25.717331+00:00 app[web.1]:←[0m   File "/app/.heroku/pytho
n/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 33, in load
←[33m2013-07-17T23:17:25.717331+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [7] [I
NFO] Worker exiting (pid: 7)
←[33m2013-07-17T23:17:25.863220+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [2] [I
NFO] Shutting down: Master
←[33m2013-07-17T23:17:25.863355+00:00 app[web.1]:←[0m 2013-07-17 23:17:25 [2] [I
NFO] Reason: Worker failed to boot.
←[33m2013-07-17T23:17:27.176443+00:00 heroku[web.1]:←[0m Process exited with sta
tus 3
←[33m2013-07-17T23:17:27.194233+00:00 heroku[web.1]:←[0m State changed from star
ting to crashed
←[33m2013-07-17T23:17:19.814946+00:00 heroku[web.1]:←[0m State changed from up t
o crashed
←[33m2013-07-17T23:17:19.815657+00:00 heroku[web.1]:←[0m State changed from cras
hed to starting
2013-07-17T23:19:20+00:00 heroku[slug-compiler]: Slug compilation started
←[36m2013-07-17T23:20:01.083451+00:00 heroku[api]:←[0m Deploy 339f362 by emailadd
ress@email.com
←[36m2013-07-17T23:20:01.121450+00:00 heroku[api]:←[0m Release v4 created by che
riexress@email.com
←[36m2013-07-17T23:20:01.164786+00:00 heroku[api]:←[0m Deploy 339f362 by emailadd
ress@email.com
2013-07-17T23:20:02+00:00 heroku[slug-compiler]: Slug compilation finished
←[33m2013-07-17T23:20:08.957935+00:00 heroku[web.1]:←[0m State changed from star
ting to up
←[33m2013-07-17T23:20:01.520877+00:00 heroku[web.1]:←[0m State changed from cras
hed to starting
←[36m2013-07-17T23:23:26.902944+00:00 heroku[api]:←[0m Scale to web=1 by emailadd
ress@email.com
←[32m2013-07-17T23:23:32.825464+00:00 heroku[router]:←[0m at=info method=GET pat
h=/favicon.ico host=secret-falls-6154.herokuapp.com fwd="69.249.253.220" dyno=we
b.1 connect=1ms service=4ms status=500 bytes=135
←[32m2013-07-17T23:27:34.455499+00:00 heroku[router]:←[0m at=info method=GET pat
h=/ host=pathetic.herokuapp.com fwd="69.249.253.220" dyno=web.1 connect=2ms serv
ice=11ms status=500 bytes=135
←[32m2013-07-17T23:27:34.782763+00:00 heroku[router]:←[0m at=info method=GET pat
h=/favicon.ico host=pathetic.herokuapp.com fwd="69.249.253.220" dyno=web.1 conne
ct=2ms service=8ms status=500 bytes=135
←[32m2013-07-17T23:27:34.959360+00:00 heroku[router]:←[0m at=info method=GET pat
h=/favicon.ico host=pathetic.herokuapp.com fwd="69.249.253.220" dyno=web.1 conne
ct=2ms service=6ms status=500 bytes=135
←[36m2013-07-17T23:27:46.177839+00:00 heroku[api]:←[0m Scale to web=0 by emailadd
ress@email.com
←[33m2013-07-17T23:27:46.404001+00:00 heroku[web.1]:←[0m State changed from up t
o down
←[36m2013-07-17T23:44:26.986606+00:00 heroku[api]:←[0m Scale to web=1 by emailadd
ress@email.com
←[33m2013-07-17T23:44:34.147645+00:00 heroku[web.1]:←[0m Starting process with c
ommand `gunicorn pathetic.wsgi`
←[33m2013-07-17T23:44:45.317811+00:00 app[web.1]:←[0m 2013-07-17 23:44:45 [2] [I
NFO] Starting gunicorn 17.5
←[33m2013-07-17T23:44:45.318913+00:00 app[web.1]:←[0m 2013-07-17 23:44:45 [2] [I
NFO] Using worker: sync
←[33m2013-07-17T23:44:45.318772+00:00 app[web.1]:←[0m 2013-07-17 23:44:45 [2] [I
NFO] Listening at: http://0.0.0.0:9194 (2)
←[33m2013-07-17T23:44:45.334904+00:00 app[web.1]:←[0m 2013-07-17 23:44:45 [7] [I
NFO] Booting worker with pid: 7
←[33m2013-07-17T23:44:45.397342+00:00 heroku[web.1]:←[0m State changed from star
ting to up

エラーがあるように見えStarting process with command 'gunicorn oldtestapp.wsgi'ますImportError: No module named oldtestapp.wsgi... Heroku はまだ gunicorn に、作成したテスト アプリを実行するように指示しようとしているようです。gunicorn に oldtestapp を忘れさせて、新しいものを正しく実行させるにはどうすればよいですか?

他に必要な情報があれば教えてください。それが役立つ場合は、virtualenv を使用せずにプロジェクトを git にコミットしました。Django アプリケーション自体はエラーなく動作します (別の場所でテストしましたが、heroku に移行しようとしています)。

このherokuプロジェクトのすべてのファイルをグローバル検索して、「oldtestapp」の出現をすべて削除しようとしましたが、何も見つかりませんでした。

4

1 に答える 1

0

偶然同じ問題に遭遇する可能性のある人のために、回避策を見つけました:

Procfile を次のように変更しました。

web: python manage.py run_gunicorn 

基本的に、ここでの回避策は、Gunicorn から Django を実行する代わりに、Gunicorn を Django サービスとして実行することです。もちろん、gunicorn を settings.py に追加する必要があります。

私はまだ元の問題を理解していないので、これは解決策ではなく回避策だと思います.

于 2013-08-03T22:08:00.910 に答える