dockerはファイルシステムの残りのディスク容量を上書きします。

dockerはファイルシステムの残りのディスク容量を上書きします。

私はLinuxに初めて触れました。 armbianをSDカードにインストールしましたが、すべてがうまくいきました。 SDカードは64GBです。その後、docker.io、docker-compose、およびportainerをインストールすると、それはすべてです。

lsblkを使用してディスク容量を確認する場合:

    # lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
mmcblk0      179:0    0  59.5G  0 disk
├─mmcblk0p1  179:1    0   512M  0 part /boot
└─mmcblk0p2  179:2    0  58.4G  0 part /
mmcblk1      179:32   0  14.6G  0 disk
mmcblk1boot0 179:64   0     4M  1 disk
mmcblk1boot1 179:96   0     4M  1 disk
zram0        254:0    0    50M  0 disk /var/log
zram1        254:1    0 929.4M  0 disk [SWAP]

次に df を使用します。

# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            796M     0  796M   0% /dev
tmpfs           186M  8.0M  178M   5% /run
/dev/mmcblk0p2   58G  2.2G   55G   4% /
tmpfs           930M     0  930M   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           930M     0  930M   0% /tmp
/dev/mmcblk0p1  511M   59M  453M  12% /boot
/dev/zram0       49M  7.0M   38M  16% /var/log
overlay          58G  2.2G   55G   4% /var/lib/docker/overlay2/b28da5a318945ac7ae1d17d26a635edb9a662c6116dea37fb4f6c13e1c76d7d2/merged
tmpfs           186M     0  186M   0% /run/user/0

2つの55GB(/dev/mmcblk0p2とオーバーレイファイルシステム)が残っているのはなぜですか?これは、/var/lib/docker/overlay2/.../mergedこのフォルダで55 GBのスペースしか使用できないという意味ですか?

ありがとう

答え1

/dev/mmcblk0p2Linuxディストリビューションをインストールするためのルートファイルシステム。

2.2GB使用および使用可能な場所55GB

/var/lib/docker/overlay2ディレクトリはDockerが画像とコンテナを保存する場所です。

Docker は、保存に Copy-On-Write ファイルシステムを使用して、既存のファイルシステムの上に新しいレイヤーを作成します。

これはDockerオーバーレイファイルシステムと表示される場所です。df -h

overlay          58G  2.2G   55G   4% /var/lib/docker/overlay2/b28da5a318945ac7ae1d17d26a635edb9a662c6116dea37fb4f6c13e1c76d7d2/merged

SDカードには、ファイルの保存、パッケージのインストール、Dockerの使用などに55GB十分なストレージがあります。

必要に応じて、このパスを別のディレクトリ、ストレージ、またはディスクに変更できます。

ドッカーストレージドライバ

OverlayFSストレージドライバの使用

従来のオーバーレイドライバは、Overlay2に必要な「マルチサブディレクトリ」機能をサポートしていないカーネル用です。現在サポートされているすべてのLinuxディストリビューションはこれをサポートしているため、廃止されました。

Dockerのオーバーレイ

Dockerはオーバーレイファイルシステムを使用してイメージを作成し、コンテナレイヤーをイメージレイヤーの上に配置します。イメージがダウンロードされると、そのレイヤーは/var/lib/docker/overlay2フォルダに配置されます。

マージされたフォルダはオーバーレイファイルシステムであり、それ自体はディスク容量を占有しません。代わりに、dfはデフォルトのファイルシステムのディスク使用量を報告します。あなたの場合は/

/var/lib/docker/overlay2/*/merged があまりにも多くのスペースを占める

関連情報