了解在Docker中传递给-v的参数

如果我在terminal运行下面​​的命令,

$ docker create -v /dbdata --name dbdata training/postgres /bin/true 

我有点了解-v命令现在是如何工作的,但是我还是不太了解上面的命令,我基本上有一个困难的理解,

 -v /dbdata 

作品,这个命令的那部分真的在做什么? 我真的不明白什么-v /dbdata真的在做什么?

-v /dbdata分配一个Docker卷,并使其在容器内的/dbdata可用。 Docker“volume”是由docker存储引擎分配的一块存储,与您的其他容器文件系统不同。

从文档引用:

数据量

数据卷是绕过联盟文件系统的一个或多个容器内的特定目录。 数据卷为持久或共享数据提供了一些有用的function:

当容器被创build时,卷被初始化。 如果容器的基础映像包含指定安装点上的数据,则在卷初始化时,现有数据将被复制到新卷中。

  • 数据卷可以在容器之间共享和重用。
  • 数据量的变化是直接进行的。
  • 更新图像时,不会包含对数据量的更改。
  • 即使容器本身被删除,数据量仍然存在。

数据卷旨在持续数据,与容器的生命周期无关。 因此,Docker在删除容器时不会自动删除卷,也不会“垃圾收集”不再由容器引用的卷。