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初心者のための基本操作のまとめ

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

推薦する

Dockerで作成したコンテナを削除する方法

Dockerで作成したコンテナを削除する方法1. まず、docker -s -aコマンドを使用してす...

MySQL 2級コンピュータ試験共通テストポイント 8つのMySQLデータベース設計最適化方法

MySQLデータベース設計の8つの最適化方法の詳細は次のとおりです。 1. 最も適切なフィールド属性...

検証コード干渉を実装する js (静的)

この記事では、検証コード干渉を実装するためのjsの具体的なコードを参考までに共有します。具体的な内容...

docker を使用して複数のネットワーク インターフェースを持つコンテナーを起動する方法の例

コンテナにネットワークインターフェースを追加する1 デフォルトのネットワークモードでコンテナを実行す...

Mac MySQL のルートパスワードをリセットするチュートリアル

免責事項:このパスワード リセット方法は、Homebrew によってインストールされた MySQL ...

ECMAScriptにおけるプリミティブ値と参照値の詳しい説明

目次序文動的プロパティとは何ですか?値のコピー値の種類を決定する要約する序文これは JavaScri...

kubernetes1.5.2 から kubernetes1.10 にアップグレードする際の主要な設定変更記録

この記事では、kubernetes1.5.2 から kubernetes1.10 にアップグレードす...

VueはTeleportをベースにModalコンポーネントを実装します

目次1. テレポートについて知る2. テレポートの基本的な使い方3. 最初のステップの最適化4. 第...

CSS3は小さな矢印のさまざまなグラフィック効果を実現します

CSS を使ってさまざまなグラフィックを実現できるのは素晴らしいことです。画像を切り取る必要はなく、...

JS 開発効率を上げる4つの超実践的なヒント

目次1. 短絡判定2. オプション連鎖演算子 (?) 3. ヌル合体演算子 (??) 4. 終了関数...

Dockerのネットワークモードと設定方法

1. Dockerネットワークモードdocker run が Docker コンテナを作成するときに...

【HTML要素】タグテキストの詳細説明

1. 基本的なテキスト要素を使用してコンテンツをマークアップするまず表示効果を見てみましょう:対応す...

MySql バージョンの問題に対する完璧なソリューション sql_mode=only_full_group_by

1. sql_modeを確認する @@sql_mode を選択照会された値は次のとおりです。 ON...

jsはブラウザを閉じるときにアカウントのログアウトを処理します

目次古典的なアプローチ質問その他の質問注意が必要な問題古典的なアプローチご存知のとおり、アカウントの...

Macにmysql5.7.18をインストールする詳細な手順

1. ツール今必要なツールは2つあります: MySQLサーバー (mysql-5.7.18)、MyS...