数据卷
Docker 数据卷(Volume)是 Docker 用于持久化和共享数据的主要方式
允许容器与宿主机之间进行数据共享,并且当容器删除时,卷中的数据可以保留
多个容器可以共享同一个卷,方便它们之间进行数据交换
与直接挂载宿主机目录相比,卷的隔离性更好,容器无法轻易访问宿主机的其他文件
常用的卷操作
创建数据卷:docker volume create my_volume
查看现有卷:docker volume ls
挂载数据卷到容器:docker run -d --name my_container -v my_volume:/path/in/container my_image
绑定挂载主机目录:docker run -d --name my_container -v /path/on/host:/path/in/container my_image
删除数据卷(删除卷,注意:如果卷正在被容器使用,需要先停止并删除容器):docker volume rm my_volume
自动创建匿名卷:如果在运行容器时使用 -v /path/in/container
,而不指定宿主机目录或数据卷名称,Docker 会自动为你创建一个匿名卷
检查数据卷的详细信息:docker volume inspect my_volume
实例
# 假设你有两个容器需要共享数据,可以使用相同的数据卷
# 1.创建数据卷
docker volume create shared_data
# 2.运行第一个容器并挂载卷
docker run -d --name container1 -v shared_data:/data busybox
# 3.运行第二个容器并挂载同一个卷
docker run -d --name container2 -v shared_data:/data busybox
1
2
3
4
5
6
7
2
3
4
5
6
7