目录
1 概念
2 常用命令
3 操作步骤(主要讲在创建容器时的挂载)
3.1 挂载在默认目录
3.2 挂载在自定义目录
4 附加内容(查看容器的挂载情况)
1 概念
数据卷(volume)是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。这样容器内容和主机内容就会同步变化,相互影响,方便容器数据的迁移。
图示如下(图片来自黑马程序员):
注:本文参考自黑马程序员
2 常用命令
命令 | 介绍 |
---|---|
docker volume create | 创建数据卷 |
docker volume ls | 查看所有数据卷 |
docker volume rm | 删除数据卷 |
docker volume inspect | 查看一个数据卷的详情 |
docker volume prune | 清除数据卷 |
具体可查看官方文档,如下:
docker volume create | Docker Docs
3 操作步骤(主要讲在创建容器时的挂载)
3.1 挂载在默认目录
在执行docker run命令时,使用 -v 数据卷:容器内目录 可以完成数据卷挂载
当创建容器时,如果挂载了数据卷且数据卷不存在,会自动创建数据卷
例子如下:
docker run -d --name nginx -v html:/usr/share/nginx/html -p 80:80 nginx
创建后,容器/usr/share/nginx/html的内容就在/var/lib/docker/volumes/html/_data下
默认 /var/lib/docker/volumes/
3.2 挂载在自定义目录
在执行docker run命令时,使用 -v 本地目录 : 容器内目录 可以完成本地目录挂载
注意:本地目录必须以“/”或 "./" 开头,否则会被识别为数据卷,如3.1
例子如下:
#进入root
cd ~#挂载
docker run -d --name nginx -v ./html:/usr/share/nginx/html -p 80:80 nginx
这样/usr/share/nginx/html的内容就在/root/html下
4 附加内容(查看容器的挂载情况)
使用如下命令,就可以查看容器的挂载情况:
docker inspect xx
这里使用docker inspect mysql,结果如下: