docker容器之数据管理

本文详细介绍了Docker数据卷的概念及使用方法,包括数据卷的基本操作、如何通过数据卷实现容器间的数据共享、数据卷容器的创建与使用,以及数据卷的备份与迁移等关键知识点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、数据卷是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性:
  • 数据卷可以在容器之间共享和重用
  • 对数据卷的修改会立马生效
  • 对数据卷的更新,不会影响镜像
  • 卷会一直存在,即使挂载的数据卷的容器已经删除。

数据卷的使用,类似于 Linux 下对目录或文件进行 mount。

示例:

docker run -idt --name wyl01 -v /opt/container/:/data centos /bin/bash

docker run -itd --name wyl02 -v /opt/data centos /bin/bash

2、挂载一个主机目录作为数据卷
使用  -v  标记也可以指定挂载一个本地主机的目录到容器中去。
[root@bfd-v7 container]# docker run -idt --name wyl01 -v /opt/container/:/data centos /bin/bash

#第2步我们发现wyl01容器中并有数据
#第3步我们在本地的container目录下创建一个web.txt文件
#第4步我们在wyl01的容器中的data目录下发现也同样有一个web.txt文件。


3、数据卷容器
如果你有一些持续更新的数据需要在容器之间共享,最好创建数据卷容器。
数据卷容器,其实就是一个正常的容器,专门用来提供数据卷供其它容器挂载的。
首先,创建一个命名的数据卷容器 wyl02,然后,在其他容器中使用  --volumes-from  来挂载 wyl02容器中的数据卷。
[root@bfd-v7 container]# docker run -itd --name wyl02 -v /opt/data centos /bin/bash
[root@bfd-v7 container]# docker run -itd --name wyl03 --volumes-from wyl02 centos /bin/bash
[root@bfd-v7 container]# docker exec wyl02 touch /opt/data/www.txt
[root@bfd-v7 container]# docker exec wyl02 ls /opt/data
[root@bfd-v7 container]# docker exec wyl03 ls /opt/data

#第1步:创建一个wyl02命名的数据卷容器
#第2步:--volumes-from  来挂载 wyl02容器中的数据卷
#第3步:查看两个容器的data目录下都没有数据
#第4步:在其中一个容器的data目录下面创建数据
#第5步:在另一个容器的data目录下面同时会生成一样的数据。

4、数据卷的备份和迁移
[root@bfd-v7 container]# docker run -itd --name wyl04 --volumes-from  wyl02  -v /opt/data/backup:/backup centos  tar cvf /opt/data/backup.tar.gz  /opt/data
506fa942b66173a27594163be918b74401a96db99ad8e42afadd38fc149cdc5b

参数说明

  • --volumes-from wyl02 是挂载需要备份的数据卷容器名称,它就是一个容器。
  • -v /opt/data:/opt/data 这是挂载主机目录到窗口中,第一个/opt/data是代表着容器的目录,第二个/opt/data是代表着主机的目录。
  • centos 是代表着容器的REPOSITORY的ID,这个ID可以用docker images命令查看。
  • tar czvf /opt/data/backup.tar.gz //opt/data 这部分放在后面,代表着容器启动成功后的命令。这部分就是对数据卷进行压缩,/sb/backup.tar.gz 这个目录是挂载的主机的目录,只要压缩到这个目录,那就相当于主机的目录也就有了相应的数据, //opt/data这个目录是挂载的数据卷容器中的目录,综合起来就是一组压缩命令,正好实现了把数据卷中的数据备份到当前主机中。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值