1. ホーム

Docker Containerがコード137で終了した

2022-02-27 20:16:30

Dockerコンテナはコード137で終了しました。

平成30年1月18日

を使用して多数の Docker コンテナを起動しようとした場合、そのコンテナには  docker-compose  Mac では、コンテナの 1 つがランダムに 137 という終了コードで終了していました。メッセージは次のようなものです。


コンテナ名


 exited with code 137

私の最初の反応は、すぐに実行しようとしたことです。  docker exec -it container-id /bin/bash  と言ってログを見るのですが、その前に手早く終了コード137を調べることにしました。

このコードは、Docker for Macに十分なRAMが割り当てられていないことによく関連していることがわかりました。より具体的には、Linux の OOM (out of memory) Killer が作動し、プロセスを終了させたのです。

つまり、Dockerメニューから  環境設定  をクリックすると  アドバンスド  タブをクリックし、Memoryを増やしてください。

私のDockerのメモリは2.0GB(おそらくデフォルト)に設定されていたので、4.0GBに増やしたら問題解決しました。

また、この問題を回避するために  --memory  コンテナの起動時に制限をかけるか、docker compose を使用している場合は、以下のような方法で  docker-compose.yml  ファイルに記述します。

version: '3'
services:
  your-service-name:
    image: image-name:tag
    deploy:
      resources:
        limits:
          memory: 50M
        reservations:
          memory: 20M