CoreOS:当拉大型大于4 GB的docker镜像时

时间:2015-11-30 11:58:47

标签: linux docker coreos docker-registry docker-image

docker pull myimagename

导致:

/var/lib/docker/overlay/670c89b1815cc9e3e27441690e47042fc554e432472ed8507`4284a890db56da0/    : no space left on device

df -h

╔══════════════════════════════════════════════════════╗
║ Filesystem      Size  Used Avail Use% Mounted on     ║
╠══════════════════════════════════════════════════════╣
║ devtmpfs        4.3G     0  4.3G   0% /dev           ║
║ tmpfs           4.4G     0  4.4G   0% /dev/shm       ║
║ tmpfs           4.4G   17M  4.3G   1% /run           ║
║ tmpfs           4.4G     0  4.4G   0% /sys/fs/cgroup ║
║ tmpfs           4.4G  3.0G  1.4G  70% /              ║
║ /dev/loop0      162M  162M     0 100% /usr           ║
║ tmpfs           4.4G  228K  4.4G   1% /tmp           ║
║ tmpfs           4.4G     0  4.4G   0% /media         ║
╚══════════════════════════════════════════════════════╝

我可以理解,这是一个空间问题。但这是否意味着我无法处理大尺寸的docker图像(在这种情况下是4 GB)。我该如何处理这个问题?

已经尝试过解决方案:

我在virtualbox上运行CoreOS。我尝试增加虚拟磁盘映像大小(甚至达到75 GB),但仍然遇到相同的错误。

1 个答案:

答案 0 :(得分:0)

df -h command的输出看起来您正在运行CoreOS Live ISO映像。因此,整个操作系统从ISO(CD)加载到RAM中,并且磁盘上没有安装CoreOS。

有关如何将CoreOS安装到磁盘上的信息,请参阅https://coreos.com/os/docs/latest/installing-to-disk.html(在大多数基本版本的安装中,您可以执行coreos-install -d /dev/sda并在sda上安装CoreOS,删除磁盘上的所有数据)。

请参阅我的CoreOS安装上的df -h输出:

Filesystem      Size  Used Avail Use% Mounted on
devtmpfs         16G     0   16G   0% /dev
tmpfs            16G     0   16G   0% /dev/shm
tmpfs            16G  1.9M   16G   1% /run
tmpfs            16G     0   16G   0% /sys/fs/cgroup
/dev/sda9       901G  588G  276G  69% /
/dev/sda4       985M  390M  545M  42% /usr
/dev/sda1       128M   58M   70M  46% /boot
tmpfs            16G     0   16G   0% /media
tmpfs            16G     0   16G   0% /tmp
/dev/sda6       108M   52K   99M   1% /usr/share/oem
/dev/md126p1    1.8T  591G  1.2T  34% /home

请注意,安装点是读取磁盘,而不是像您的情况那样是tmpfs。

从磁盘安装和运行CoreOS可以解决您的问题。

编辑:

如果您已经安装了CoreOS,则可能是从用于执行安装的CD(ISO)启动操作系统。您需要更改引导顺序或删除CD(ISO),因此CoreOS将从您安装它的磁盘引导。