Docker-14-数据卷容器

2019-05-28  本文已影响0人  冷风_f818

数据卷容器就是一个专门用来挂载数据卷的容器,该容器主要是供其他容器引用和使用,所谓的数据卷容器,实际上就是一个普通的容器.

创建数据卷容器

命令如下:

docker run -tid -v /usr/share/nginx/html/ --name mydata ubuntu

就是运行了一个ubuntu容器,然后挂载了/usr/share/nginx/html/这个目录

引用容器

使用如下命令引用数据卷容器:

docker run -tid --volumes-from mydata -p 80:80 --name nginx1 nginx  

docker run -tid --volumes-from mydata -p 81:80 --name nginx2 nginx
image

执行完毕后,刚刚运行的两个nginx容器就都挂载了同一个数据卷到usr/share/nginx/html/目录下面,三个容器中,任意一个修改了该目录下的文件,其他两个都能看到变化

可以用docker inspect命令去查看这三个容器的详情,关于数据卷的部分如下:

image image image

从图中可以看到,三个容器的数据卷的描述都是一致的

注意事项

这里有几点需要注意的地方

数据备份

利用数据卷容器可以实现数据的备份与恢复,备份命令如下:

docker run  mydata --name worker --privileged=true -v /usr/docker/backup/:/backup/ ubuntu tar cvf /backup/backup.tar /usr/share/nginx/html/

执行如下:

image

可以看到backup.tar就有了已经,然后打开其实就是/usr/share/nginx/html目录及内容,至此备份就完成了

数据恢复

步骤如下

创建容器

首先需要创建一个容器,这个容器就是要使用恢复的数据的容器,这里就再创建一个nginx容器了,命令如下:

docker run -itd -p 82:80 -v /usr/share/nginx/html/ --name nginx3 nginx

容器名称是nginx3,然后挂载了一个数据卷

恢复

创建一个临时容器,如下:

docker run --volumes-from nginx3 -v $(pwd):/backup nginx tar xvf /backup/backup.tar
image

至此,数据恢复就完成了

上一篇下一篇

猜你喜欢

热点阅读