php中文网

Docker 安装 MySQL:为何不配置数据挂载目录也会自动创建?

php中文网

docker 安装 mysql,为何不配置数据挂载目录也会自动创建?

在安装 docker 时,如果你没有为 mysql 配置数据挂载目录,它会自动配置一个挂载卷,但如果你配置了,启动过程则会失败。为何会出现这种现象呢?

要解决此问题,我们可以参考 dockerfile 中的官方文件。在文件中,我们可以看到,对于任何 docker run 的疑问,都可以通过 dockerfile 找到答案。

例如,官方 mysql dockerfile 如下:

FROM mysql:8.0.33
  CMD ["mysqld"]

从该文件中可以看出,默认情况下,mysql 容器将使用一个匿名挂载卷来存储数据。这就是为什么即使你不配置挂载目录,它也会自动创建一个挂载卷的原因。

然而,如果你自己指定了一个挂载目录,docker 将使用该目录而不是匿名挂载卷。在这种情况下,启动过程就会失败,因为它无法同时使用两个不同的目录来存储数据。

以上就是Docker 安装 MySQL:为何不配置数据挂载目录也会自动创建?的详细内容,更多请关注php中文网其它相关文章!