質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

3988閲覧

djangoでherokuにデプロイしたい

machid

総合スコア19

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/02/27 09:10

編集2019/02/27 09:54

発生している問題・エラーメッセージ

ローカルでは動作しますがherokuにデプロイするとクラッシュしApplication Errorがでます。

ログをたどると

Shutting down: Master
Reason: Worker failed to boot.
State changed from up to crashed
Process exited with status 3

code=H10のエラーが出ます。

procfile

1web: gunicorn mysite.wsgi

Django-2.1.7
whitenoise-4.1.2
gunicorn-19.9.0

procfileの記述を中心にいろいろ試しましたが解決できません。
ご回答よろしくお願いいたします。

app[web.1]: raise HaltServer(reason, self.WORKER_BOOT_ERROR) app[web.1]: gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3> heroku[web.1]: State changed from starting to crashed heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=djangodragon13.herokuapp.com request_id=cb599b3b-8412-464d-b876-08cfb6d5d494 fwd="117.102.189.134" dyno= connect= service= status=503 bytes= protocol=https heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=djangodragon13.herokuapp.com request_id=f5a9adf2-cc0b-445e-a2b8-28213d361c6d fwd="117.102.189.134" dyno= connect= service= status=503 bytes= protocol=https

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gh640

2019/03/04 11:48 編集

ryu22e さんがコメントされているように、ご提供されている情報が少ないので原因を特定するのが難しいかもしれません。 以下は引き続き回答を期待されているのであれば、のコメントです(そうでない場合はスルーしてください)。 「code=H10のエラー」とのことですが、次のページのサンプルのように、その前後にさまざまなエラーログが出力されているはずです。これを確認してご提示される必要があるものと思います( code=H10 だけだと本当にさまざまな原因が考えられるので、そのすべてのパターンを teratail 上でチェックしていくのは現実的ではないと思います)。 https://devcenter.heroku.com/articles/error-codes#h10-app-crashed また、 `Procfile` ・ `requirements.txt` ・ `runtime.txt` 等の設定ファイルと、ローカルで適切に動作しているときの `settings.py` 、メインの `urls.py` 等の中身をご提示されるとより具体的な議論ができうるものと思います。
guest

回答1

0

ベストアンサー

code=H10のエラーが出ます。

これだけだと何とも言えないので、code=H10が含まれているログ全体をここに貼ってもらえれば、何か分かるかもしれません。

投稿2019/02/27 09:27

ryu22e

総合スコア132

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

machid

2019/02/27 09:36

ご回答ありがとうございます。 エラー文追記しました。
ryu22e

2019/02/27 09:42 編集

貼ってもらった以下ログより上の方には何が書かれているでしょうか? 恐らく、「何とかError」とか「何とかException」のようなメッセージが出力されていると思うのですが、そこにヒントがあるはずです。 ``` heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=djangodragon13.herokuapp.com request_id=cb599b3b-8412-464d-b876-08cfb6d5d494 fwd="117.102.189.134" dyno= connect= service= status=503 bytes= protocol=https heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=djangodragon13.herokuapp.com request_id=f5a9adf2-cc0b-445e-a2b8-28213d361c6d fwd="117.102.189.134" dyno= connect= service= status=503 bytes= protocol=https ```
machid

2019/02/27 09:55

ありがとうございます、追記しました。 gunicornのエラーが出たりでなかったりします。
ryu22e

2019/02/27 10:10

「gunicornのエラーが出たりでなかったり」ということはブラウザ上でもサイトの表示ができたりできなかったりするということでしょうか? それと、1点確認しておきたいのですが、Djangoプロジェクトの直下に `mysite/wsgi.py`というファイルはありますか? Procfileの内容を見ると、これをgunicornが読み込む設定になっているようなので、なければ作っておく必要があります。 Herokuは公式にDjangoプロジェクトテンプレートを公開しています。 以下を参考にして作るといいです。({{ project_name }}は今開発されているDjangoプロジェクト名に置き換えてください) https://github.com/heroku/heroku-django-template/blob/master/project_name/wsgi.py
machid

2019/02/28 01:24

お返事ありがとうございます。 ブラウザ上ではApplication errorが表示されます。 Djangoプロジェクト直下にはmysite/wsgi.pyを作っています。 現在参考にしているのは https://djangogirlsjapan.gitbook.io/workshop_tutorialjp/です。 テンプレートの情報ありがとうございます。
ryu22e

2019/02/28 02:37

mysite/wsgi.pyは作っていましたか。 今のところ確認できるログの内容では「gunicornがクラッシュした」という情報以外ないので、原因を特定するのは難しいです。 raise HaltServerの前の行に「○○Error」とか「○○Exception」のようなメッセージは確認できないでしょうか? 例えば、以下のように「ImportError: No module named elcarweb.wsgi」のようなメッセージが出力されているなら、存在しないelcarweb.wsgiを読み込もうとしてエラーになっているのが原因と分かります。 https://stackoverflow.com/a/33366472 (今回のケースではmysite/wsgi.pyは作成されているとのことなので、別のエラーかもしれませんが)
machid

2019/02/28 05:18

ありがとうございます。 State changed from crashed to starting heroku[web.1]: Starting process with command `gunicorn mysite.wsgi` app[web.1]: [2019-02-28 03:00:06 +0000] [4] [INFO] Starting gunicorn 19.9.0 app[web.1]: [2019-02-28 03:00:06 +0000] [4] [INFO] Listening at: http://0.0.0.0:17614 (4) app[web.1]: [2019-02-28 03:00:06 +0000] [4] [INFO] Using worker: sync app[web.1]: [2019-02-28 03:00:06 +0000] [10] [INFO] Booting worker with pid: 10 app[web.1]: [2019-02-28 03:00:06 +0000] [11] [INFO] Booting worker with pid: 11 app[web.1]: [2019-02-28 03:00:07 +0000] [10] [ERROR] Exception in worker process このようなメッセージが確認できますが原因がわかりません。
ryu22e

2019/02/28 05:25

「app[web.1]: [2019-02-28 03:00:07 +0000] [10] [ERROR] Exception in worker process」の下に「Traceback (most recent call last):」というメッセージがあって、その下に「○○Error」・「○○Exception」のようなエラーメッセージが出てくるはずなんですけどねー。 貼ってもらったログは「heroku logs」で確認しているのでしょうか? どうやって確認しているのか教えてもらえますか?
machid

2019/02/28 09:04

返信ありがとうございます。 貼らせていただいたログはheroku logs --tail で確認しています。
ryu22e

2019/02/28 09:56

heroku logs --tailで確認しているなら必要な情報は見られるはずなんですけどねー。 繰り返しますが、貼ってもらったログの「app[web.1]: [2019-02-28 03:00:07 +0000] [10] [ERROR] Exception in worker process」の下に「Traceback (most recent call last):」というメッセージがあって、その下に「○○Error」・「○○Exception」のようなgunicornがクラッシュする原因になっているエラーの名前が表示されているはずです。 それが読めればお力になれると思うのですが、それが表示されていないということであれば、ちょっと私には見当が付きません。 長々と付き合っていただいたのに申し訳ないです…
machid

2019/03/07 05:31

Pythonanywhereにデプロイすることで解決(?)いたしました。 たくさんの情報を教えていただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問