2016-06-29 3 views
0

JHipsterプロジェクトを作成し、Linuxマシンで実行しようとしました。すべてのコンテナはうまく作成されています。私は "docker ps"でそれらを見ることができ、 "docker stats"で使い方を見ています。Docker + JHipster +メモリ使用量が上がる

しかし、メモリは絶えず上昇し続けます。結局、私のラップトップ(コアi5、10GBのRAM)が応答を停止して死んでしまいます!

docker_compose.ymlの各サービス定義でmem_limitを試してみましたが、ドッカーの統計情報に限界があるのがわかりました...しかし、メモリは上昇し続け、コンテナの使用率が95%を超えると、コンテナは機能しなくなり、取り外されます。だから..この設定は、私のPCが死ぬのを防ぐだけです。

また、-Xmxと他のメモリパラメータのENV JAVA_OPTSをdocker_compose.yml ...で設定しようとしましたが、結果は同じです。

レジストリ、ゲートウェイ、ビジネスマイクロサービスとUAAは、少なくとも1.5GBで死ぬことができ、他の画像/コンテナ(mysql、elasticsearchなど)は512mで動作することができます。しかし、4 x 1.5GBといくつかの512MBのメモリをすべて消費しています。 JHipsterレジストリは512MBで大丈夫でしょう。私は512MBのHerokuでレジストリを設定しています。

私は基本OS(ubuntu 14.04ベース)、64ビット、カーネル3.19.0-59-ジェネリック、Java 1.8、ドッカーバージョン1.11.2ビルドb9f10c9を実行しており、grub上でcgroupsコンフィグレーションを行いましたドッカーのインストールガイドから)。ここでは猫の/ proc /のcgroupのoutoutがある:

#subsys_name hierarchy num_cgroups enabled cpuset 1 4 1 cpu 2 4 1 cpuacct 3 4 1 memory 4 7 1 devices 5 4 1 freezer 6 4 1 net_cls 7 4 1 blkio 8 4 1 perf_event 9 4 1 net_prio 10 4 1 hugetlb 11 4 1

もう一つ..私はメモリが起動して上がる。これレポhttps://github.com/kbastani/spring-cloud-microservice-exampleからプロジェクトを試してみましたが、まったく同じ問題を持っています。

私はあなたがこれを助けることができれば幸いです。

ありがとうございます!

答えて

0

コンテナの容量は制限されていますが、変更することはできません。

メモリが高すぎる(95%)LinuxのOOMキラーは、著名な運命からシステムを保存するための手順(OOM Killerを参照)

TL; DR 実行以下のコンテナ以上のメモリを取得します。

+0

こんにちは、お返事ありがとうございます。はい、控えめな環境(サーバー)にはもっと多くのメモリが必要ですが、devで作業する場合はそれほど多くはありません。私はOOMを調べていましたが、無効にすることができます(常にmem_limitを定義しています)...無効にするにはdocker_composeでは使用できません。私はまた、イメージが重すぎる重すぎるかもしれないと思っている、私はこの記事を見ているhttp://www.developer.com/design/a-guide-to-docker-image-optimization.html画像を縮小する。とにかく、私たちが適用することができますより多くのパフォーマンスの向上があるはずです..他のケースでは、Herokuは300MBのこの作業を取得する方法は? –