docker - レイヤーの登録に失敗しました: tar ファイルの処理中にエラーが発生しました (終了ステータス 1) デバイスに空き容量がありません

docker - レイヤーの登録に失敗しました: tar ファイルの処理中にエラーが発生しました (終了ステータス 1) デバイスに空き容量がありません

私はマンジャロ

私は次のことを繰り返し受け取ります:

failed to register layer: Error processing tar file(exit status 1): write /usr/lib/x86_64-linux-gnu/libvlccore.so.9.0.0: no space left on device

その間ダウンロード中:

docker pull kdeneon/all

これは、df -H

Filesystem      Size  Used Avail Use% Mounted on
dev             2.6G     0  2.6G   0% /dev
run             2.6G  930k  2.6G   1% /run
/dev/dm-0        16G   11G  4.8G  69% /
tmpfs           2.6G   39M  2.6G   2% /dev/shm
tmpfs           2.6G     0  2.6G   0% /sys/fs/cgroup
tmpfs           2.6G   48M  2.6G   2% /tmp
/dev/dm-1        18G  631M   17G   4% /home
tmpfs           514M  4.1k  514M   1% /run/user/1000

/var/lib/docker/image私は、からへの画像ディレクトリのシンボリックリンクも作成しました/home/newbie/docker/image。 は のみを使用しているため、/homeのみが4%使用されます。

ls -l /var/lib/docker/image
lrwxrwxrwx 1 root root   26 Mar  9 07:32 image -> /home/newbie/docker/image/

効果はありません。

他に何ができるでしょうか? なぜこのようなことが起こるのでしょうか?

答え1

この問題を解決する正しい方法は、docker データ ディレクトリを十分なスペースがある別の場所に移動することです。私の場合、これはホーム パーティションでした。

daemon.jsonそのためには、ファイルを作成し/etc/docker、次の行を追加する必要がありました。

{
    "data-root": "/home/newbie/docker_data"
}

次に、docker サービスを再起動します。systemd を使用している場合は、次のようにします。

systemctl restart docker

答え2

Docker Desktop のない Mac コンピューターでも同じエラーが発生しました。また、docker データ ディレクトリを移動しても機能しませんでした。

これは、minikube を使用して私がうまくいった方法です。

minikube stop && minikube delete // this is required
minikube start --memory=16384 --cpus=8 --disk-size='80000mb'
eval $(minikube docker-env)

その後、もう一度お試しくださいdocker pull...

関連情報