下载Docker镜像包出错



我正在尝试建立一个docker映像(使用我的Dockerfile),我得到一个非常奇怪的错误关于下载目录空间不足:

Total download size: 208 k
Installed size: 760 k
Downloading packages:
Error downloading packages:
  libyaml-0.1.4-11.el7_0.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/7/centos/packages
    * free   0 
    * needed 55 k
  PyYAML-3.10-11.el7.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/7/centos/packages
    * free   0 
    * needed 153 k
The command '/bin/sh -c yum -y install python-yaml' returned a non-zero code: 1

我使用的是centos7基础图像

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G     0  7.8G   0% /dev
tmpfs           1.6G  106M  1.5G   7% /run
/dev/sda1       118G  112G     0 100% /
tmpfs           7.9G  648K  7.9G   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/sdb1        92G  206M   87G   1% /boot
tmpfs           1.6G   56K  1.6G   1% /run/user/1001

下面的docker命令是为我修复底层错误的技巧:

$ docker rm $(docker ps -qa)

对我来说,跑步:

docker image prune

做到了。结果发现我有很多垃圾(也就是悬挂的)图像占用了空间。prune文档可以在这里找到

检查并确保/var目录有足够的空间,因为这是docker存储其映像的地方。

设置:df -h /var

如果是100%,你可能需要清理一些空间。

docker ps -a -列出所有容器(包括已停止和已退出的容器)。使用docker rm {CONTAINER_ID}来释放一些空间

或者执行docker images来删除未使用的图像。docker rmi {IMAGE_ID} .

您需要检查空格最初被使用的位置

du -h /var | grep -E ‘^[0-9.]*[M|G]’

如果某个特定目录占用了太多空间,检查如何正确删除它。而你做到了。

您曾经没有删除过docker容器或映像吗?通常是空间不足的根本原因。

通过以下命令检查。

du -hs /var/lib/docker

如果目录空间太大,您可以在下面解决docker命令。

移除所有容器,

docker rm $(docker ps -qa)

删除所有镜像,

docker rmi $(docker image ls -qa)

但原因可能不是docker,比如大的日志文件或rpm缓存和一些大文件。然后你可以删除文件。

下面的命令适用于我:

docker system prune

这将允许您修剪所有悬空的图像,悬空的构建缓存,未使用的网络。

最新更新