docker volume
docker volume
1. 查看帮助
-- create 创建数据卷
-- inspect 显示数据卷的详细信息
## 可查看到详细信息,例如创建时间,位置,挂载点,标签等信息
-- ls 列出所有的数据卷
-- prune 删除本地未使用的数据卷
-- rm 移除一个或者多个 数据卷
2.数据卷共享
在运行一个新的容器之前,我们可以使用 run --mount 或者-V选项来将我们创建的数据卷挂在到我们的容器中,并且在一次run中可以挂载多个数据卷。
-- 运行一个数据卷容器
# docker run -it -v /dbdata --name dbdata ubuntu
-- 在运行两个容器
# docker run -it --volumes-from dbdata --name db1 ubuntu:16.04
# docker run -it --volume-from dbdata --anme db2 ubuntu:16.04
在数据卷中的/dbdata目录夹中创建一个文件,查看db1和db2中的相同位置,可以查看到有相同的文件,三个容器任何一个在此目录夹下的写入,其他容器都可以并能立即查看到文件的变化,这就是共享数据卷
可以多次使用--volumes-from参数从多个容器挂载多个数据卷,还可以从其他已经挂载了容器卷的容器来挂载数据卷
注意:使用--volumes-from 参数所挂载数据卷的本身并不需要保持在运行状态。
如果删除了挂载的容器(包括dbdata,db1和db2),数据卷并不会被自动删除,如果要删除数据卷,必须在删除最后一个还挂载着他的容器时使用docker rm -V 命令来删除指定同时删除关联的容器,
3.数据卷数据备份恢复
备份
# docker run --volumes-from dbdata -v $(pwd):/backup --name backup ubuntu16.04 tar -cf /backup/backup.tar /dbdata
恢复
# docker run -v /dbdata --name dbdata2 ubuntu /bin/bash
# docker run --volumes-from dbdata2 -v $(pwd):/backup busybox tar -xvf /backup/backup.tar

浙公网安备 33010602011771号