在实际工作中,我们在使用docker时,不可能把数据一直保存在容器里,很多的时候都需要把容器内的数据进行备份或映射管理。Docker提供的数据卷功能非常的方便,数据卷是使用物理机上的一个目录在容器运行时挂载到容器目录中,就算容器停止,数据卷中的数据依然存在,保证了数据安全性,防止因容器删除导致重要数据丢失。
1. 数据卷相关命令
docker volume --help
2.创建数据卷
docker volume create skyfans-data
3.查看系统中所有的数据卷及刚刚创建的数据卷
docker volume ls
4.查看刚才创建的卷组的详细信息
docker volume inspect skyfans-data
5.由于我们实际应用中很少会先创建卷组在挂载到容器中,我们通常会在创建容器的时候就直接指定挂载数据卷的内容。
docker run -d -p 8080:8080 -v skyfansdata:/data name "tomcat" tomcat:latest
相关参数解释:
(1)-p 8080:8080 允许容器外部访问容器暴露出来的端口,并映射容器内的8080端口至服务器外部的8080端口。
(2)-v 启动容器是添加数据卷挂载
(3)在执行命令是,默认不添加挂载权限时,挂载的数据卷为可读可写(rw),如果想使挂载的数据卷只读的话,需要在冒号后面增加“:ro”(指定为只读)即可
(4)注意:如果挂载的目录在容器中不存在,容器会自动创建相应的目录。不过在实际应用中,我们都会挂载实际存在的目录。
6.删除数据卷
docker volume rm skyfans-data
这时候,我们在查看刚才删除的数据卷已经不在系统内了。