Dockerは指定されたメモリで操作を実行します

Dockerは指定されたメモリで操作を実行します

次のように:

-m, --memory メモリ制限。形式は数値と単位です。単位は b、k、m、g のいずれかです。最低4M
--memory-swap メモリの合計制限 + スワップ パーティション サイズ。上記と同じ形式です。必須 -m はメモリのソフト制限を設定します。上記と同じ形式 --oom-kill-disable OOM キラーがコンテナを強制終了するのを防ぐかどうか。デフォルトでは設定されていません --oom-score-adj OOM キラーによって強制終了されるコンテナの優先度。範囲は [-1000, 1000]、デフォルトは 0 です
--memory-swappiness は、コンテナの仮想メモリ制御動作を設定するために使用されます。値は 0 から 100 までの整数です。 --kernel-memory カーネル メモリの制限。上記と同じ形式、最小サイズは4M

例を参照してください:

[root@sannian ~]# docker run -d -m 1G --memory-swap 3G -p 9999:80 --restart=always --name gitlab twang2218/gitlab-ce-zh
a3254078a79a084f3f3bed5f4ade3e26c7d86951cd822d95b113227d75b00097
[root@sannian ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
a3254078a79a twang2218/gitlab-ce-zh "/assets/wrapper" 21 分前 2 分稼働 (正常) 22/tcp、443/tcp、0.0.0.0:9999->80/tcp gitlab
[root@sannian ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
twang2218/gitlab-ce-zh 最新 18da462b5ff5 3か月前 1.61GB
registry-vpc.cn-hangzhou.aliyuncs.com/wenty/jumpserver 最新 055f42f305f5 7 か月前 1.41GB
registry.cn-hangzhou.aliyuncs.com/wenty/jumpserver 最新 055f42f305f5 7 か月前 1.41GB
registry.jumpserver.org/public/jumpserver 1.0.0 055f42f305f5 7か月前 1.41GB
registry.jumpserver.org/public/jumpserver 最新 055f42f305f5 7 か月前 1.41GB

補足: Docker run -mはメモリサイズを指定しますが、効果はありません

docker runを実行するときにメモリサイズを指定したいので、-mパラメータを使用します

エラーは次のとおりです

#docker run -id -m 3g -p 7001:7001 197.3.16.51/sysmgr/mywebapptest_app_weblogic:20180820047 警告: カーネルがスワップ制限機能をサポートしていないか、cgroup がマウントされていません。スワップなしではメモリが制限されます。52380a4896f3f916cd0f95f97e233b30d9406840e10c0c53484b3be9000d0321

その後、ヒープ サイズを 5G に設定しても、コンテナーは作成され、3G の制限は適用されないことがわかりました。

情報を確認したところ、このエラーはホストカーネルの関連機能が有効になっていないために発生していることがわかりました。

解決

以下の設定に従ってください

ステップ1:

/etc/default/grubファイルを編集し、GRUB_CMDLINE_LINUX行を次のように変更します。

GRUB_CMDLINE_LINUX="cgroup_enable=メモリ swapaccount=1"

ステップ2:

GRUBを更新します。つまり、$ sudo update-grubを実行します。

ステップ3:

システムを再起動します。

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • Docker 起動時の ES メモリ オーバーフローの解決方法
  • Docker JVM メモリ使用量の表示
  • Docker メモリ監視とストレステストの方法
  • Docker View プロセス、メモリ、カップ消費量
  • Docker が elasticsearch を起動するときのメモリ不足の問題と解決策
  • Docker でコンテナに使用できるメモリを制限する方法

<<:  MySQL Binlog ログ処理ツールの比較分析

>>:  ビジュアルデザインとインタラクションデザインについて

推薦する

Vue サーバーに js 構成ファイルをインポートする方法

目次背景成し遂げるvue-cli2.0での設定方法の補足要約する背景プロジェクトにはローカル構成ファ...

ウェブページ作成時に標準 HTML コードを使用する際のポイント

多くの Web サイト デザイナーが犯す最も一般的な間違いは、Web ページが IE で正常に表示さ...

Vueは携帯電話のカメラとアルバムを呼び出す機能を実装します

この記事では、携帯電話のカメラとアルバムにアクセスするためのVueの具体的なコードを参考までに共有し...

MySQL バッチ挿入ループの詳細なサンプルコード

背景数日前、MySql でページングを行っていたときに、ページングに制限 0,10 を使用するとデー...

MySQL 8の新機能ROLEの詳しい説明

MySQL ROLE はどのような問題を解決しますか?プロフェッショナルな資質を持ち、権限管理に細心...

Nexus サーバーを設定するための詳細な手順

1. ネクサスサービス構築の意義イントラネットの統合プロキシとして、チームで共同開発する場合、全員が...

Vueでクラススタイルを使用する方法の詳細

目次1. ブール2. 表現3. マルチクラスパッケージ4. v-bind でクラス class を直...

HTMLの水平線注釈とコードコメントの使い方をマスターするだけです

水平線<hr /> タグを使用して、現在の位置に水平の分割線を描画します。例: XML/...

分散監視システムZabbixはSNMPとJMXチャネルを使用してデータを収集します

前回の記事では、Zabbix のパッシブ、アクティブ、Web 監視に関するトピックについて学習しまし...

win2008R2 64 ビット システムでの mysql5.7.17 のインストールと構成の例

123WORDPRESS.COM では、さまざまな環境での MYSQL の他のバージョンのインストー...

CSS の inline-block の最小幅値の詳細な説明

序文最近、私は夜に時間を取って「CSS World」という本を読んでいます。この本は非常に興味深く、...

Tomcat は、Springboot プロジェクトの WAR パッケージの起動時にエラーを報告します: 子の起動時にエラーが発生しました

今日、会社の Springboot プロジェクトは、テストのためにテスト サーバーにデプロイする準備...

Linux自動ログイン例の説明

インターネット上には、expect を使用して自動ログインを実現するスクリプトが多数存在しますが、明...

Ubuntu システムに Theano と Keras をインストールする方法

注: システムは Ubuntu 14.04LTS、32 ビット オペレーティング システムです。Py...

sbinディレクトリを生成せずにNginxをインストールするソリューション

エラーの説明: 1. Linux (CentOS 7 64) システムに Nginx (1.18.0...