云计算核心技术Docker教程:Docker数据卷的使用

发布时间:2024-06-08
在生产环境中使用 docker,要想实现数据的持久化(所谓docker的数据持久化即数据不随着container的结束而结束)或者需要在多个容器之间进行数据共享,需要将数据从宿主机挂载到容器中,这就会涉及容器的数据管理操作。
docker数据卷(data volume,注:位置在/var/lib/docker/volumes)是容器可以访问,但是位置不在root文件系统中的一个目录。为了能让容器之间可以共享数据,docker让“卷”(volume)可以绕过docker镜像的层叠机制。容器中所有对镜像的改变全部都直接存储。每个容器都有固定的运行目录在/var/lib/docker目录下;而每个容器卷的数据则默认单独存储在/var/lib/docker/volumes/目录底下。 docker run命令的-v选项能够实现容器间数据卷中数据的互相拷贝。
数据卷volume的基本使用:
1.管理卷
创建一个自定义容器卷
$ docker volume create my-vol
查看所有容器卷
$ docker volume ls
查看指定容器卷详情信息
$ docker volume inspect my-vol
2.创建使用指定卷的容器
有了自定义容器卷,我们可以创建一个使用这个数据卷的容器,这里我们以nginx为例:
$ docker run -d -it –name=my-vol -p 8800:80 -v edc-nginx-vol:/usr/share/nginx/html nginx
其中,-v代表挂载数据卷,这里使用自定数据卷my-vol,并且将数据卷挂载到 /usr/share/nginx/html (这个目录是yum安装nginx的默认网页目录)。
如果没有通过-v指定,那么docker会默认帮我们创建匿名数据卷进行映射和挂载。
3.删除一个卷
$ docker volume rm my-vol
docker不会在容器被删除后自动删除数据卷,并且也不存在垃圾回收这样的机制来处理没有任何容器引用的数据卷,无主的数据卷可能会占据很多空间,所以要及时删除。
上一个:玩具ce认证费用、做一个ce认证多少钱
下一个:华帝油烟机风量小如何维修

公安指定管辖要先立案吗
我国最新单方离婚程序规定具体是什么
移动1000m价格(移动1000)
公司清算民事诉讼是否中止
魁拔2观后感
一氧化碳检测报警器的维修注意事项都有哪些
就业促进法规定的就业方针
曾7位数易主!域名cc.cn又被终端卖了?
比困在家里更让人难受的电器设备间歇性故障处置一例
初學養蘭四大禁忌!