[英]Docker pull error: no space left on device
While doing a docker pull I get this error message 在做一个docker pull时我收到此错误消息
Handler for POST /images/create returned error: ApplyLayer exit status 1 stdout: stderr: write XXXX: no space left on device
POST / images / create处理程序返回错误:ApplyLayer退出状态1 stdout:stderr:写XXXX:设备上没有剩余空间
I checked the disk space and the Inodes and I have enough of them. 我检查了磁盘空间和Inodes,我有足够的。 I tried anyway to free some additional space and inodes.
无论如何我试着释放一些额外的空间和inode。 Despite this the error falls always on the same file (which rules out a potential space problem).
尽管如此,错误总是落在同一个文件上(排除了潜在的空间问题)。
The image to pull is ~12Gb 要拉的图像是~12Gb
Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda4
文件系统Inode IUsed IFree IUse%挂载在/ dev / sda4上
3,0M 295K 2,7M 10% /3,0M 295K 2,7M 10%/
Filesystem Size Used Avail Use% Mounted on /dev/sda4
使用的文件系统大小可用在/ dev / sda4上使用%
47G 15G 30G 34% /47G 15G 30G 34%/
I tried exporting the image from another computer and importing it on the computer causing problems. 我尝试从另一台计算机导出图像并将其导入计算机导致问题。 However I get the same error of 'no space left on device'
但是我得到了“设备上没有剩余空间”的相同错误
I tried removing all images, even deleting completely /var/lib/docker, restarting the docker daemon, without any luck. 我尝试删除所有图像,甚至完全删除/ var / lib / docker,重新启动docker守护程序,没有任何运气。
Running on MacBook 12.11 with ubuntu 14.02 installed. 在安装了ubuntu 14.02的MacBook 12.11上运行。
kernel: 3.18.0-031800-generic #201412071935 SMP Mon Dec 8 00:36:34 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
内核:3.18.0-031800-generic#201412071935 SMP Mon Dec 8 00:36:34 UTC 2014 x86_64 x86_64 x86_64 GNU / Linux
docker version 码头版
Docker version 1.7.1, build 786b29d
Docker版本1.7.1,构建786b29d
docker info 码头工人信息
Containers: 2
Images: 85
Storage Driver: devicemapper
Pool Name: docker-8:4-920131-pool
Pool Blocksize: 65.54 kB
Backing Filesystem: extfs
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 6.185 GB
Data Space Total: 107.4 GB
Data Space Available: 33.83 GB
Metadata Space Used: 8.061 MB
Metadata Space Total: 2.147 GB
Metadata Space Available: 2.139 GB
Udev Sync Supported: false
Deferred Removal Enabled: false
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Library Version: 1.02.82-git (2013-10-04)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 3.18.0-031800-generic
Operating System: Ubuntu 14.04.2 LTS
CPUs: 8
Total Memory: 15.58 GiB
Name: geb
ID: TTQN:73Y5:IU35:CK53:UELX:HPRQ:BKMM:ZNNM:O56G:6WL3:RZXE:NV4H
WARNING: No swap limit support
devicemapper
has caused me innumerable problems across various different kernels and OSs. devicemapper
在各种不同的内核和操作系统中引起了无数问题。 Issues here . 问题在这里 。
Jerome Petazzo has some broader recommendations - although BTRFS also had/has ongoing serious issues, that has got it (and DeviceMapper, and AUFS on Ubuntu 12.04) pulled from production in previous deployments. 杰罗姆佩塔佐有一些更广泛的建议 - 虽然BTRFS也有/持续存在严重问题,但在之前的部署中已经从生产中撤出了(以及Ubuntu 12.04上的DeviceMapper和AUFS)。
My preference for storage drivers is overlay
, which is available since kernel 3.18
(further opinions expressed here ): 我对存储驱动程序的偏好是
overlay
,自内核3.18
( 此处表达的进一步意见)以来可以使用:
Storage Driver: overlay
Backing Filesystem: extfs
Update /etc/default/docker
with ( more here ): 更新
/etc/default/docker
( 更多这里 ):
DOCKER_OPTS="-s overlay"
(ensure you only have one DOCKER_OPTS
- that file doesn't support BASH syntax as one may expect) (确保您只有一个
DOCKER_OPTS
- 该文件不支持BASH语法)
edit: I seem to recall the devicemapper fix is to delete everything as you have done, and reboot. 编辑:我似乎记得devicemapper修复程序是删除所有内容,然后重新启动。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.