![Docker 绑定挂载在 Linux 上是否会降低性能?](https://linux22.com/image/1620808/Docker%20%E7%BB%91%E5%AE%9A%E6%8C%82%E8%BD%BD%E5%9C%A8%20Linux%20%E4%B8%8A%E6%98%AF%E5%90%A6%E4%BC%9A%E9%99%8D%E4%BD%8E%E6%80%A7%E8%83%BD%EF%BC%9F.png)
我知道在 Windows 或 macOS 上使用 Docker Desktop 时,在容器中使用绑定挂载会导致性能损失,并且为了提高性能,最好使用卷。但是,我找不到有关在 Linux 上运行 Docker 时的任何损失的信息。
在 Linux 上的 Docker 上使用绑定挂载是否会导致性能损失,或者由于 Docker 在 Linux 上本地运行,因此不会产生性能损失?
答案1
不,Linux 上没有任何惩罚。
从https://docs.docker.com/docker-for-mac/osxfs-caching/
在 Linux 上,这些保证不会带来任何开销,因为底层 VFS 直接在主机和容器之间共享。
在那篇文章中,你可以阅读更多关于为什么会出现这些性能问题以及 Docker 在 macOS 上如何尝试解决这些问题的信息
percona也做了一个测试:https://www.percona.com/blog/2016/02/11/measuring-docker-io-overhead/
因此我可以自信地说,上述任何 docker 数据卷模式都没有 IO 开销。