简而言之,我的问题是:
在docker-compose中,两者之间有什么区别
volumes:
- type: volume
source: mydata
target: /data
和
volumes:
- type: bind
source: mydata
target: /data
?
问题很长:
在docker-compose文件中指定volume选项时,可以使用long-syntax style
根据文档,type选项接受3个不同的值:volume,bind和tmpfs:
我了解tmpfs选项-it means that the volume will not be saved after the container is down..
但是我在文档中找不到关于其他两个选项之间的区别的任何参考:绑定和音量,有人可以启发我吗?
最佳答案
当绑定装载是来自主机的文件时,卷更像是Docker的nas.
原文链接:/docker/532509.html>绑定挂载是从主机(运行docker守护程序的主机)挂载到容器上的文件.
>卷就像完全由docker管理的存储空间.
在文献中,您会发现两种类型的卷:
>命名卷(您提供它的名称)
>匿名卷(来自docker的通常UUID名称,例如您可以在容器或未标记的图像上找到它们)
这些卷带有自己的docker commands套.您也可以通过以下方式查阅此列表
docker volume --help
您可以通过以下方式查看现有卷
docker volume ls
您可以通过以下方式创建命名卷
docker volume create my_named_volume
但是您也可以通过docker-compose文件创建卷
version: "3.3"
services:
MysqL:
image: MysqL
volumes:
- type: volume
source: db-data
target: /var/lib/MysqL/data
volumes:
db-data:
这是说请docker的部分,请在容器目录/ var / lib / MysqL / data顶部将名为db-data的卷安装到我
- type: volume
source: db-data
target: /var/lib/MysqL/data
这是对docker所说的部分,请为我创建一个名为db-data的卷
volumes:
db-data:
有关三种安装类型的Docker文档:
> https://docs.docker.com/storage/bind-mounts/
> https://docs.docker.com/storage/volumes/
> https://docs.docker.com/storage/tmpfs/