我在曼扎罗。
我不断得到:
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...
一次。