Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
限制Windows上的Docker容器磁盘大小_Windows_Docker_Docker Compose_Filesystems_Tmpfs - Fatal编程技术网

限制Windows上的Docker容器磁盘大小

限制Windows上的Docker容器磁盘大小,windows,docker,docker-compose,filesystems,tmpfs,Windows,Docker,Docker Compose,Filesystems,Tmpfs,我需要一种限制容器磁盘大小的方法,主要是测试应用程序在磁盘空间不足时的行为。我尝试运行的Docker容器使用Linux映像。棘手的一点是,我需要在Windows上完成它。我知道如何使用tmpfs和其他一些技巧来实现这一点,但它们都不能在Windows上工作。我想我可以将我的实际磁盘分区,并将其共享到容器中,但我希望避免这样做,以便于重复使用(就像其他人一样) 我真的不在乎解决方案如何工作,当然,我更喜欢在docker容器中安装,这样我就可以只限制数据文件夹,而不是整个容器,也可以更好地使用doc

我需要一种限制容器磁盘大小的方法,主要是测试应用程序在磁盘空间不足时的行为。我尝试运行的Docker容器使用Linux映像。棘手的一点是,我需要在Windows上完成它。我知道如何使用tmpfs和其他一些技巧来实现这一点,但它们都不能在Windows上工作。我想我可以将我的实际磁盘分区,并将其共享到容器中,但我希望避免这样做,以便于重复使用(就像其他人一样)


我真的不在乎解决方案如何工作,当然,我更喜欢在docker容器中安装,这样我就可以只限制数据文件夹,而不是整个容器,也可以更好地使用docker compose,但我想这是相当棘手的,所以即使没有它也会很有帮助

您应该能够装箱一个有大小限制的卷(用于Linux映像)。
发件人:

Linux上的内置本地驱动程序接受与Linux mount命令类似的选项。通过多次传递--opt标志,可以提供多个选项。某些装载选项(如o选项)可以采用逗号分隔的选项列表。可在此处找到可用装载选项的完整列表

例如,下面创建了一个名为foo的tmpfs卷,其大小为100 MB,uid为1000

$docker卷创建--驱动程序本地\
--opt类型=tmpfs\
--opt设备=tmpfs\
--opt o=尺寸=100m,uid=1000\
福

然后,您可以声明要装入的卷。

您应该能够装箱一个有大小限制的卷(用于Linux映像)。
发件人:

Linux上的内置本地驱动程序接受与Linux mount命令类似的选项。通过多次传递--opt标志,可以提供多个选项。某些装载选项(如o选项)可以采用逗号分隔的选项列表。可在此处找到可用装载选项的完整列表

例如,下面创建了一个名为foo的tmpfs卷,其大小为100 MB,uid为1000

$docker卷创建--驱动程序本地\
--opt类型=tmpfs\
--opt设备=tmpfs\
--opt o=尺寸=100m,uid=1000\
福

然后,您可以使用Windows主机内核,使用Docker Windows映像在Windows上声明要装入的卷。

?或者在Windows上,通过HyperV使用Linux VM内核,使用Docker Linux映像,装载Linux卷?(使用xfs配额:)@VonC在Windows上,使用Linux映像。因此,作为Windows,文件系统是NTFS。
docker run-ti--storage opt size=20g centos bash
或通过Windows限制docker mount文件夹的大小。@bogdancondurace因此您将使用Linux虚拟机来访问Linux内核以运行Linux docker映像。因此,您装入的卷将是基于Linux的文件系统,而不是NTFS。@VonC是的,但我无法对虚拟化Linux运行命令。在Windows上,使用Docker Windows映像,使用Windows主机内核?或者在Windows上,通过HyperV使用Linux VM内核,使用Docker Linux映像,装载Linux卷?(使用xfs配额:)@VonC在Windows上,使用Linux映像。因此,作为Windows,文件系统是NTFS。
docker run-ti--storage opt size=20g centos bash
或通过Windows限制docker mount文件夹的大小。@bogdancondurace因此您将使用Linux虚拟机来访问Linux内核以运行Linux docker映像。因此,您装入的卷将是一个基于Linux的文件系统,而不是NTFS。@VonC是的,但我无法对虚拟化的Linux运行命令。使用tmpfs在Windows或Mac计算机上不起作用,正如其文档中所述,它只适用于Linux。@Bogdancondurace因此您需要使用Linux VM,因为它们在Windows 10上可用(假设您使用的是最新的Windows 10)使用tmpfs在Windows或Mac计算机上不起作用,它仅适用于Linux,如其文档中所述。@BogdanCondurace因此您需要使用Linux VM,因为它们在Windows 10上可用(假设您使用的是最新的Windows 10)