为什么Docker构建如此缓慢

Ele*_*erm 5 performance docker

当我尝试在笔记本电脑上构建映像时,泊坞窗非常慢。我尝试在具有相同docker版本的虚拟机中的ubuntu中构建相同的映像,并在5秒钟内构建了它,但是在我的笔记本电脑上,它对每条语句的求值速度都慢了30倍。甚至ENV命令!

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

Docker 1.13.1。

谢谢。

UPD。

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

但是,在笔记本电脑上,它始终使用我的4核CPU的一个内核,并且始终保持100%的速度,而HDD几乎始终保持空闲状态。

这是nmon统计信息: 在此处输入图片说明

abd*_*lar 6

这听起来像是您的笔记本电脑 btrfs 文件系统存在问题 - 就像它的碎片一样。尝试研究调整 btrfs。我还会查看与 docker 和 btrfs 有关的 docker 文档的这一部分https://docs.docker.com/engine/userguide/storagedriver/btrfs-driver - 特别是有关性能的部分,其中涉及碎片。

  • 你是对的。这是 btrfs 的问题。我刚刚将 docker 目录移至 XFS,现在工作正常 (2认同)

Joe*_*Fan 6

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

**/bin
**/obj
**/node_modules
.git
Run Code Online (Sandbox Code Playgroud)