以下docker命名卷与绑定挂载卷之间是否存在性能差异?如果是,我们在谈论多少数字?
docker run -v mysql:/var/lib/mysql mysql:tag
docker run -v /path/to/mysql-data:/var/lib/mysql mysql:tag
这些容器用于大多数数据库,例如elasticsearch,mysql和mongodb。我该选哪一个?
答案 0 :(得分:0)
在两个平台(MacOS,Windows with WSL 2)上,绑定安装特别慢。
除此之外,您不应在命名卷,容器文件系统,映像中的文件(无论层数如何)或绑定装载(尤其是在本机Linux上)之间看不到明显的性能差异。
一个好的通用规则可能是对配置文件和日志文件使用绑定挂载,在这些文件中I / O相对较少,但是作为人,您需要直接访问文件;命名卷,用于数据库存储和其他内容,其中I / O相对频繁,但作为人类,您不能直接读取文件;以及应用程序代码的图像本身。