Dockerはローカルイメージとコンテナの保存場所を設定します

Dockerはローカルイメージとコンテナの保存場所を設定します

指定したサイズより大きいファイルを検索するには、find コマンドを使用します。

 検索 / -type f -size +10G

ディレクトリを除外する

検索 / -path "/media/xww" -type f -size +10G

Docker ローカルイメージとコンテナの保存場所を変更する方法

方法1: ソフトリンク

デフォルトでは、Dockerは次の場所に保存されます: /var/lib/docker
次のコマンドを実行すると、特定の場所を表示できます。

sudo docker info | grep "Docker ルート ディレクトリ"

この問題を解決する最も直接的な方法は、もちろんこのディレクトリにパーティションをマウントすることですが、データ ディスクには他のものも含まれており、管理するのは決して簡単ではないため、イメージとコンテナーのストレージ パスを変更する方法を使用して目的を達成します。

この方法はソフト接続を通じて実装されます。

まず、Docker サービスを停止します。

systemctl dockerを再起動します
またはサービスdocker stop

次に、/var/lib/docker ディレクトリ全体を宛先パスに移動します。

mv /var/lib/docker /root/data/docker
ルートディレクトリの /var/lib/docker にデータを書き込む

この時、Dockerを起動すると、ストレージディレクトリは/var/lib/dockerのままですが、実際はデータディスク上に保存されています。データディスク上の容量の変化が確認できます。

方法2: 拡張可能な論理ボリューム

デフォルトでは、Docker の保存場所は次のとおりです。
ドッカー
通常、ルート パーティションは大きくしすぎません。一般的に、より多くの画像やコンテナを保存するための解決策は2つあります。
1. 大きなパーティションを /var/lib/docker にマウントします。
一般的には、グループのその後の拡張を容易にするために、論理パーティション lvm を作成することが選択されます。

a. 新しいパーティションを作成し、フォーマットします。PS: 以下の操作では、既にボリューム グループが存在し、論理ボリュームを直接作成できることを前提としています。または、論理ボリュームを自分で作成するか、論理ボリュームを使用せずにパーティションを直接使用することもできます: lvcreate -L 300G lv_docker vg_home  
mkfs.ext4 /dev/vg_home/lv__docker  
    b. 新しいパーティションを一時マウントポイント[plain]にマウントします。view plain copy
/mnt/docker ディレクトリに移動します  
/dev/vg_home/lv_docker /mnt/docker/ をマウントします。 

    c. dockerを停止した後、/var/lib/dockerの下のデータを一時マウントポイント[plain]にコピーします。
サービス docker 停止  
cp -r /var/lib/docker/* /mtn/docker 

    d. /var/lib/dockerを//var/lib/docker.bakに変更し、/var/lib/dockerを作成します。
[プレーン] 表示 プレーン コピー
mv /var/lib/docker{,.bak}  
/var/lib/docker ディレクトリに移動します 

    e. 新しいパーティションを /var/lib/docker にマウントし、起動時に自動的にマウントするように設定します。
[プレーン] 表示 プレーン コピー
/dev/vg_home/lv_docker /var/lib/docker をマウントします。  
vim /etc/fstab  
---  
 /dev/vg_home/lv_docker /docker_data ext4 デフォルト 0 0  
----  

     f. dockerが利用可能かどうか、データが完全かどうかを確認します [plain] view plain copy
Docker イメージ  
ドッカーps -a  

     g. 確認後、一時マウントポイントをアンインストールし、/var/lib/docker.bakを削除します。
[プレーン] 表示 プレーン コピー
/mnt/docker をアンマウントする  
rm -rf /var/lib/docker.bak

方法3: イメージとコンテナの保存パスを変更する

イメージとコンテナの保存パスを指定するためのパラメータは –graph=/var/lib/docker です。起動パラメータを指定するには、構成ファイルを変更するだけで済みます。

Docker 構成ファイルでは、バックグラウンド プロセスのほとんどのパラメータを設定できます。保存場所はオペレーティング システムによって異なります。Ubuntu の場所は /etc/default/docker、CentOS の場所は /etc/sysconfig/docker です。

CentOS の場合は、次の行を追加します。

オプション=--graph="/root/data/docker" --selinux-enabled -H fd://

Ubuntu の場合は、次の行を追加します (Ubuntu ではデフォルトで selinux が有効になっていないため)。

オプション=--graph="/root/data/docker" -H fd://
# または DOCKER_OPTS="-g /root/data/docker"

最後に再起動すると、Docker パスが /root/data/docker に変更されます。
動作しない場合は、次の操作を実行してください。

デフォルトのdockerコマンド  
設定情報を追加する DOCKER_OPTS="--graph=/home/docker"  
保存してサービスを終了し、dockerを再起動します。  
設定が有効にならないことが判明しました解決策:
 mkdir -p /etc/systemd/system/docker.service.d  
 /etc/systemd/system/docker.service.d/Using_Environment_File.conf を編集します。  
ファイルが存在しない場合は自分で作成し、次の内容を追加します [サービス]  
環境ファイル=-/etc/default/docker  
実行開始=  
ExecStart=/usr/bin/dockerデーモン -H fd:// $DOCKER_OPTS  
設定をロードし、サービスを再起動します。systemctl daemon-reload  
サービスdockerの再起動  
設定が有効かどうかを確認する

ローカルイメージとコンテナの保存場所のDocker設定に関するこの記事はこれで終わりです。ローカルイメージとコンテナの保存場所のDocker設定の詳細については、123WORDPRESS.COMの以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Dockerコンテナでは、イメージを簡素化してサイズを縮小する方法を詳しく説明しています
  • Dockerはコンテナを通じてイメージを生成し、詳細にDockerCommitを送信します
  • Skywalking は Docker イメージをコンテナ化してデプロイし、テストから可用性まで k8s を構築します。
  • Docker イメージとコンテナ サービスの IDEA リモート管理の実装
  • Dockerコンテナ練習用イメージウェアハウス
  • Docker コンテナの実践: イメージとコンテナの仕組み

<<:  MySQL初心者のための基本操作のまとめ

>>:  ドキュメントの場所の比較

推薦する

Linux ファイアウォール設定の詳細な手順 (yum ウェアハウス設定に基づく)

序文この実験では、デバッグ用に2つの仮想マシン(CentOs6とRed Hat 6)を準備します。 ...

Vueはページdivボックスのドラッグアンドドロップソート機能を実装します

vue は、ページ上の div ボックスのドラッグ アンド ドロップ ソート機能を実装します。 序文...

Vueでアイコンをカスタマイズする手順

ant-design-vue は Ali iconfont icons の使用をカスタマイズします\...

MySQL マスタースレーブレプリケーションスレッドの状態遷移に関する詳細な理解

序文MySQL マスター スレーブ レプリケーションの基本原理は、スレーブ データベースがマスター ...

フロントエンドセキュリティの詳細な説明: JavaScript の http ハイジャック対策と XSS

目次HTTP ハイジャック、DNS ハイジャック、XSS HTTPハイジャックDNSハイジャックXS...

XAML でボタンを円として再描画する方法

XAML レイアウトを使用する場合、インターフェイスを Metro 風にするために、一部のボタンでは...

vue3+ts+EsLint+Prettier 標準コード実装

目次使用EsLintの使用プロフィールを追加するPrettierの使用huskyとlint-stag...

CSS が初期読み込み時の白い画面の時間に与える影響

外部 CSS ファイルを使用したレンダリング パイプライン上図では、HTML データの要求から DO...

スケーラブルな列の完全な例を実現するための Ant 設計 Vue テーブル

ant-design-vue テーブルのスケーラブルな列の問題に対する完璧なソリューション。固定列と...

ミニプログラムはミニプログラムクラウドを使用してWeChatの支払い機能を実装します

目次1. WeChat Payを開く1.1 アフィリエイト加盟店番号1.2 加盟店番号を追加する1....

Dockerを使用してgitlabコミュニティの中国語版を構築する詳細なプロセスを教えます

1. Docker Composeを使用して起動を構成するDocker Compose を知らない場...

dockerコンテナがIP経由でホストマシンにアクセスできない問題を解決する方法の詳細な説明

問題の起源docker を使用する場合、残念ながら docker コンテナ内のホストのポート 80 ...

スタイル属性 (element.style) で定義されたインライン スタイルを削除する方法

Magento を頻繁に変更する場合、element.style に遭遇することがあります。 これは...

MySQLテーブルをコピーする方法

目次1.mysqlダンプ実行プロセス:特徴2. CSVファイルをエクスポートする(最も柔軟性が高い)...

MySQLデータベースに画像を保存するいくつかの方法

通常、ユーザーがアップロードした写真はデータベースに保存する必要があります。一般的に、解決策は 2 ...