为何Docker构建速度如此之慢

时间:2017-03-02 06:34:17

标签: performance docker

当我尝试在笔记本电脑上构建图像时,我的码头工具非常慢。 我尝试在我的ubuntu内部虚拟机中使用相同的docker版本构建相同的映像,并在5秒钟内构建它,但在我的笔记本电脑上它会评估每个语句,比如慢30倍。 甚至是ENV命令!

笔记本电脑使用OpenSUSE 42.2 Leap和Btrfs作为根文件系统,HDD使用5400 rpm并且它也是加密的。 我知道所有这些因素,但它们是如此重要,以至于我的构建需要15分钟而不是5秒?

Docker 1.13.1。

感谢。

UPD。

不确定它是否有帮助,但是当我在我的虚拟机上运行docker build -t test .时,它使用10%的4核CPU 5秒,然后使用HDD。

然而,在笔记本电脑上,它一直使用我的4核CPU的一个核心100%,并且硬盘几乎一直处于空闲状态。

这里是nmon统计数据: enter image description here

2 个答案:

答案 0 :(得分:2)

这听起来像你的笔记本电脑btrfs文件系统有问题 - 就像它的碎片一样。尝试调查btrfs。我还将研究与docker和btrfs https://docs.docker.com/engine/userguide/storagedriver/btrfs-driver相关的docker文档的这一部分 - 特别是关于性能的部分,指出了碎片。

答案 1 :(得分:2)

不确定这是否是相同的问题,只是通过将以下.dockerignore文件添加到构建文件中,使构建时间从5分钟 变为5分钟。与我的docker-compose.yml文件相同的目录。

**/bin
**/obj
**/node_modules
.git