2016-08-19 8 views
0

〜1日後にドッキングコンテナが終了コード137で終了する問題が発生しています。コンテナのログには、エラーコードが発生したことを示す情報は含まれていません。さらに、コンテナーを再始動しようとすると、アプリケーションのPIDがすでに存在するというエラーが戻されます。sbt/playアプリケーションを実行している間にDockerコンテナがエラーなしで停止する

コンテナは、sbtドッカープラグインsbt docker:publishLocalを使用して構築され、 docker run --name=the_app --net=the_app_nw -d the_app:1.0-SNAPSHOTを使用して実行されます。

私はまた3つのドッキング用コンテナを使用していますが、それらはすべて一緒に使用可能なメモリの90%を使用しますが、その特定のコンテナはいつでも存在します。

次に参照する場所のアドバイスを探しています。

+0

失敗したコンテナから 'docker inspect the_app'の出力を提供し、エラーを返す再起動のコマンドと出力を表示してください。コンテナがダウンしている間の 'docker ps -a'の出力も役に立ちます。 – BMitch

答えて

2

エラーコード137(128 + 9)は、何かによって(kill -9 yourAppのように)殺されたことを意味します。それは何かがたくさんある可能性があります(ドッカーなどで多すぎるリソースを使用していた可能性があり、おそらくメモリが不足している可能性があります)

この問題については、build.sbt

javaOptions in Universal ++= Seq(
    "-Dpidfile.path=/dev/null" 
) 

基本的には、PlayにRUNNING_PIDファイルを作成しないよう指示する必要があります。動作しない場合は、JAVA_OPTSのenv変数を使用してDockerで直接そのオプションを渡すことができます。

関連する問題