文章目录
多记,多练
前言
数据卷(Data Volumes)
数据卷是一个可供一个或多个容器使用的特殊目录,
它将主机操作系统目录直接映射进容器,
提示:以下是本篇文章正文内容,下面案例可供参考
一、数据卷(Data Volumes)是什么?
数据卷是一个可供一个或多个容器使用的特殊目录,
它将主机操作系统目录直接映射进容器,
二、使用步骤
1.它可以提供很多有用的特性:
代码如下(示例):
1.数据卷 可以在容器之间共享和重用
2.对数据卷的修改会立马生效
3.对数据卷的更新,不会影响镜像
4.数据卷 默认会一直存在,即使容器被删除
2.宿主机上先创建数据卷,再启动容器
docker volume create my-vol
3.查看指定数据卷的详细信息(显示一个JSON格式的数据)
docker volume inspect my-vol
4. 删除一个volume
docker volume rm my-vol
5. 挂载数据卷,最好是通过run而非create/start创建启动容器
create/start命令创建启动容器后,再挂载数据卷相当麻烦,要修改很多配置文件,但并非不可以
5.启动一个挂载数据卷的容器
## demo1(挂载数据卷)
docker run -d \
-it \
--name tomcat01 \
--mount source=my-vol,target=/webapp \
centos:latestdemo2(挂载目录,目录必须提前创建)
docker run -d \
-it \
--name tomcat02 \
--mount type=bind,source=/webapp01,target=/opt/webapp \
centos:latest
1.数据卷容器
如果用户需要在多个容器之间共享一些持续更新的数据,最简单的方式是使用数据卷容器。
数据卷容器也是一个容器,但是它的目的是专门提供数据卷给其他容器挂载
数据卷容器相关操作
1.1新建数据卷容器
docker run -it -d --name db_data -v /db_data centos
1. 2.用容器db1测试数据卷容器是否可用
docker run -it -d --name db1 --volumes-from db_data centos
docker exec -it db1 bash
cd db_data
## 使用echo命令向db1_test.txt中写入内容
echo "db1 beifen test" > db1_test.txt
## 3/4步操作作为回家作业
3.备份数据卷容器
docker run --rm --name beifen --volumes-from db_data -v host_backup_path:/container_backup ubuntu:16.04 tar cvf /container_backup/backup.tar /db_data
1.3.还原数据卷容器
1.新建一个数据卷容器db_data2
docker run -it -d --name db_data2 -v /db_data ubuntu:16.042.docker run --rm --name huanyuan --volumes-from db_data2 -v
~/host_backup:/container_backup ubuntu:14.04 tar xvf /container_backup/backup.tar - C /db_data
总结
提示:数据卷相对于一个文件夹里,多个可以相互使用,以及操作等,
数据卷容器也与数据卷相似,但是数据卷容器是一个容器