先日ざっくり試した「GPT-2」モデルの利用アプリを作っていて、FlaskでWebアプリ化して公開しようとしています。
ローカル環境で試したところ、リクエストを発行して暫く経つと「Exit Code 137」が表示されコンテナが落ちてしまいました
原因(仮説)
Pythonアプリに利用しているエースイメージは「python:3.9」というイメージです。
ググると「Dockerのメモリ割り当てを増やして解決」という記事が多く見つかりました。
おそらく自分の場合も、Dockerのメモリ割り当てが足りないのだろうと踏んで対策を行いました。
メモリ不足であると踏んだ理由は「機械学習アプリはメモリを食うから」という単純な理由です。
割当メモリを増やす(Mac + Docker Desktop)
Docker Decktopの設定画面から、Resources > Memoryの項目の値を増やすだけです
今回は8GB > 12GBに変更しました。
メモリ割り当て後は時間はかかりつつも、きちんと結果が帰ってくるようになりました。
メモリ不足以外のExit Code 137の問題
メモリ不足以外では、以下の事例もあるとのこと
https://tech-mmmm.blogspot.com/2021/03/dockerexit-137.html
https://qiita.com/hyamatan/items/0b7df8927ddbab603104
メモリ不足だけでなく、いろいろな可能性から原因を探る必要がありそうです。
以上
Docker ContainerでError Code 137が表示されコンテナが落ちるお話でした。
Dockerコンテナの場合、機能が最低限に絞られているためエラーの確認がやりにくい(ログ出力が行われていなかったり)するので、このあたりの調査ノウハウも身につけないとですね・・・
created by Rinker
¥4,180
(2024/11/11 12:53:34時点 楽天市場調べ-詳細)
created by Rinker
¥2,178
(2024/11/11 12:53:35時点 楽天市場調べ-詳細)
created by Rinker
¥2,948
(2024/11/11 12:53:35時点 楽天市場調べ-詳細)