了解在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在删除容器时不会自动删除卷,也不会“垃圾收集”不再由容器引用的卷。