我有一个docker正在运行,它给了我磁盘空间警告。如何增加泊坞空间并重新开始? (同一个容器)
假设我想给出15gb。
答案 0 :(得分:10)
我假设您正在讨论运行容器的磁盘空间。
确保在用于/var/lib/docker
的任何磁盘驱动器上有足够的空间,这是Docker默认使用的。您可以使用-g
守护程序选项更改它。
如果没有足够的空间,则可能需要对操作系统驱动器进行重新分区,以便超过15GB。如果您使用的是boot2docker
或docker-machine
,则必须增加虚拟机的音量。它取决于您用于虚拟化的内容(即VirtualBox,VMware等)
例如,如果您使用VirtualBox和docker-machine
,则可以从40GB VM开始。
docker-machine create --driver virtualbox --virtualbox-disk-size "40000" default
答案 1 :(得分:0)
要增加Docker可用空间,您必须增加docker-pool大小。如果你做了
lvs
您将看到docker-pool逻辑卷及其大小。如果您的泊坞窗池位于具有可用空间的卷组上,则只需通过
增加泊坞窗池LVlvextend -l 100%FREE <path_to_lv>
# An example using this may looks like this:
# lvextend -l 100%FREE /dev/VolGroup00/docker-pool
您可以查看更多泊坞磁盘空间提示here
由于
答案 2 :(得分:0)
Docker将所有图层/图像存储在默认的/ var / lib / docker目录中的文件格式(即aufs)中。
如果因为docker而遇到磁盘空间警告,那么必须有很多docker镜像,你需要清理它。
如果你有选择添加磁盘空间,那么你可以创建更大的单独分区,并在那里安装/ var / lib / docker,这将帮助你摆脱填充根分区。
可以在此处找到有关管理docker磁盘空间的一些额外信息。 http://www.scmtechblog.net/2016/06/clean-up-docker-images-from-local-to.html
答案 3 :(得分:0)
我的docker-vm(在OS X的VMware Fusion中为“ alpine-linux”)遇到了类似的问题:
write error: no space left on device alpinevm:/mnt/hgfs
failed to build: .. no space left on device
..最终this guide helped我来调整/扩展我的docker卷的大小。
TL; DR:
1-检查包含 / var / lib / docker
的分区的大小> df -h
/dev/sda3 17.6G 4.1G 12.6G 25% /var/lib/docker
查找'/ dev / sdaN',其中N是'/ var / lib / docker'的分区,在我的情况下为 / dev / sda3
2-关闭虚拟机,打开“虚拟机设置”>“硬盘”>更改“ virtual_disk.vmdk”(或计算机的虚拟磁盘)的大小,然后单击“应用”(see this guide)。
3-安装 cfdisk 和 e2fsprogs-extra ,其中包含 resize2fs
> apk add cfdisk
> apk add e2fsprogs-extra
4-运行 cfdisk 并调整大小/扩展 / dev / sda3
> cfdisk
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 206847 204800 100M 83 Linux
/dev/sda2 206848 4241407 4034560 1.9G 82 Linux swap / Solaris
/dev/sda3 4241408 83886079 79644672 12.6G 83 Linux
[Bootable] [ Delete ] [ Resize ] [ Quit ] [ Type ] [ Help ] [ Write ] [ Dump ]
..向下/向上选择'/ dev / sda3'
..按向左/向右/输入以选择'调整大小'->'写'->'退出'
5-运行 resize2fs 来扩展 / dev / sda3
的文件系统> resize2fs /dev/sda3
6-验证调整后的音量
> df -h
/dev/sda3 37.3G 4.1G 31.4G 12% /var/lib/docker
答案 4 :(得分:0)