システムの初期のパーティション分割により、オペレーティング システム内の対応する / パーティションは大きくなりすぎず、/var ディレクトリは個別にパーティション分割されません。 Docker サービスを実行すると、長期間使用すると、元々大きかったパーティションがだんだんと不足してきます。この問題にもっとうまく対処するにはどうすればよいでしょうか? 1. ソフトリンクを使用するオペレーティング システムでは、デフォルトでは Docker コンテナの保存場所は /var/lib/docker ディレクトリの下にあることがわかっています。次のコマンドで具体的な場所を確認できます。 #デフォルトの保存場所$ sudo docker info | grep "Docker Root Dir" デフォルトのストレージ容量が不足している問題を解決する最も直接的かつ効果的な方法は、このディレクトリに新しいパーティションをマウントすることです。ただし、元のシステム スペースが変更されていない場合は、ソフト リンク方式を採用してイメージとコンテナーのストレージ パスを変更し、同じ目的を達成します。 # Dockerサービスを停止します $ systemctl restart docker # Dockerサービスを停止します $ service docker stop 次に、/var/lib/docker ディレクトリ全体を、スペースをあまり占有しない宛先パスに移動します。この時点で Docker を起動すると、ストレージ ディレクトリは /var/lib/docker ディレクトリのままですが、実際にはデータ ディスク /data/docker に保存されていることがわかります。 # 元のコンテンツを移動する $ mv /var/lib/docker /data/docker # リンク $ ln -sf /data/docker /var/lib/docker 2. コンテナの起動パラメータを指定する設定ファイルで、コンテナの起動パラメータ --graph=/var/lib/docker を指定して、イメージとコンテナのストレージ パスを指定します。 Docker の構成ファイルでは、バックグラウンド プロセスのパラメータのほとんどを設定できますが、その保存場所はオペレーティング システムごとに異なります。 Ubuntu での場所は /etc/default/docker ファイルで、CentOS での場所は /etc/sysconfig/docker ファイルです。 # CentOS6 # Ubuntu はデフォルトで selinux メカニズムを有効にするため OPTIONS=--graph="/data/docker" --selinux-enabled -H fd:// # CentOS7 # docker.service ファイルを変更し、-g パラメータを使用して保存場所を指定します $ vi /usr/lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd --graph /新しいパス/docker #ウブントゥ # Ubuntu はデフォルトで selinux メカニズムを有効にしないため OPTIONS=--graph="/data/docker" -H fd:// 再起動後、Docker パスは /data/docker に変更されます。 # 設定ファイルを再読み込みします $ sudo systemctl daemon-reload # docker サービスを再起動します $ sudo systemctl restart docker.service Docker バージョンが 1.12 以上の場合は、daemon.json ファイルを変更したり、新しいファイルを作成したりできます。変更は Docker サービスを再起動せずにすぐに有効になります。 # 設定ファイルを変更する $ vim /etc/docker/daemon.json { 「レジストリミラー」: ["http://7e61f7f9.m.daocloud.io"], "グラフ": "/新しいパス/docker" } 3. システムの下に設定ファイルを作成する/etc/systemd/system/docker.service.d ディレクトリにドロップイン ファイル docker.conf を作成します。デフォルトでは、docker.service.d フォルダーは存在しないため、最初に作成する必要があります。 Drop-In ファイルを作成する理由は、Docker サービスが docker.conf ファイルに記載されている特定のパラメータを使用し、/lib/systemd/system/docker.service ファイル内のデフォルト サービスによって使用されるパラメータを上書きするためです。 # 新しい保存場所を定義する $ sudo vi /etc/systemd/system/docker.service.d/docker.conf [サービス] ExecStart=/usr/bin/dockerd --graph="/data/docker" --storage-driver=devicemapper 保存して vim エディターを終了します。/data/docker は新しいストレージの場所で、devicemapper は現在 Docker で使用されているストレージ ドライバーです。ストレージ ドライバーが異なる場合は、最初の手順で確認して書き留めた値を入力します。これで、サービス デーモンをリロードして Docker サービスを開始できます。これにより、新しいイメージとコンテナーが保存される場所が変更されます。すべてが正常に実行されたことを確認するには、docker info コマンドを実行して Docker ルート ディレクトリを確認します。 # 設定ファイルを再読み込みします $ sudo systemctl daemon-reload # dockerサービスを再起動します $ sudo systemctl start docker Docker イメージのデフォルトの保存場所を変更する方法についての記事はこれで終わりです。Docker イメージのデフォルトの保存場所の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL で高性能なインデックスを作成するための完全な手順
>>: JavaScript スコープチェーンの基本原理のグラフィカルな説明
Web フォームは、訪問者と Web サイト所有者間の主要なコミュニケーション チャネルです。フィー...
この記事では、シンプルなカルーセルを実装するためのJavaScriptの具体的なコードを参考までに紹...
この記事では、MySQL 8.0のインストールと設定方法を参考までに紹介します。具体的な内容は以下の...
類似の構造:コードをコピーコードは次のとおりです。 <div></div>&...
NULL および NOT NULL 修飾子、DEFAULT 修飾子、AUTO_INCREMENT 修...
目次設計シナリオ技術的なポイントサーバー情報準備フルバックアップスクリプト(Mysql-FullyB...
問題の説明: CSS アニメーション プロパティを使用すると、ループが最初に読み込まれたときに白いギ...
UI デザインにおける多くの概念は言葉で言えば似ているように見えるかもしれませんが、実際には大きく異...
序文最近、仕事の都合で、約 1000w の大量のデータを MySQL に挿入する必要があり、時間がか...
Vue+iview メニューとタブのリンク現在、vue+iview を使用してバックエンド管理システ...
「キャンセル」ボタンは必要な操作プロセスの一部ではなく、デザイン上の主要な要素として表示されません...
最も単純な hello world 出力イメージを作成することは最も簡単なスタートですが、実行中のコ...
1. BIOSを確認するまず、コンピュータの起動モードを確認します。win+R と入力し、msinf...
序文Sass は CSS3 言語の拡張機能です。Sass を使用すると、より良いスタイルシートをより...
目次DragEvent インターフェースデータ転送インターフェースの概要DataTransfer の...