其他分享
首页 > 其他分享> > Docker之数据管理

Docker之数据管理

作者:互联网

Docker之数据管理

在对容器内的数据进行备份、或者多个容器间的共享时涉及到容器内的数据管理。
引入了数据卷、数据卷容器的概念。

数据卷

数据卷是一个特殊的目录,类似与linux的mount挂载,可以在宿主机与容器、容器与容器之间进行文件的访问。

挂载一个主机目录作为数据卷:

# 在创建容器的时候使用-v参数,可以多次使用
# 将容器80端口映射到宿主机5000端口,创建数据卷,将主机的/data挂载到容器/var/data中,默认文件权限是读写,可以通过添加参数ro设置为制度
docker run -itd -p 5000:80 -v /data:/var/data --name nginx nginx 
docker run -itd -p 5000:80 -v /data:/var/data:ro --name nginx nginx 

数据卷容器

就是使用一个容器专门用来进行数据存储和共享使用。

# 创建一个数据卷容器,创建一个数据卷/dbdata
docker run -itd -v /dbdata --name dbdata centos
# 创建两个客户端容器挂载数据卷容器,在docker run时通过 --volumes-from挂载
docker run -itd --name db1  --volumes-from dbdata centos
docker run -itd --name db2  --volumes-from dbdata centos
# 进入两个容器内都能看的/dbdata目录,现在三个容器都挂载了数据卷/dbdata,任何一方进行修改都能看的到
# 在dbdata进行修改,在db1和db2都能看到
docker exec -it dbdata /bin/bash
touch test.txt
# 可以通过多次使用--volumes-from挂载多个数据卷容器或者从已挂载数据卷容器的容器挂载,比如db1 

标签:容器,--,数据管理,dbdata,挂载,Docker,数据,docker
来源: https://www.cnblogs.com/chuck-study/p/15206420.html