什么是容器数据卷
docker的理念:就是把应用和环境打包成一个镜像。
那数据呢?如果数据都在容器中,那么我们把容器删除,数据就会全部丢失!
需求:数据可以持久化
然后就产生了一个容器之间可以有一个数据共享的技术!Docker容器中产生的数据,同步到本地!这就是容器数据卷技术!目录的挂载,将我们的容器内目录,挂载到Linux上面!
总结:容器的持久化和同步操作!容器之间也是可以数据共享的
使用数据卷
方式一:直接使用命令来挂载 -v
docker run -it -v /home/ceshi:/home centos /bin/bash
#可以用下行命令查看挂载信息
docker inspect 容器id
测试同步文件操作能否成功:
再来测试,首先使用exit退出并结束容器
1.停止容器
2.在主机上修改文件
3.启动容器
4.容器里的数据依然是同步的
好处:我们以后修改只需要在本地修改,容器内会自动同步
实战
安装MySQL
#拉去5.7版本的mysql
docker pull mysql:5.7
#启动我们的MySQL
docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql02 mysql:5.7
#解释一下上面的命令
-d 后台运行
-p 端口映射
-v 卷挂载
-e 环境配置 在PASSWORD= 你的密码!
在Navicat中测试连接
然后添加一个test数据库
并在本地服务器中查看数据库目录,发现已经有了test数据库!
同样在本地对数据库操作,数据也会传输到Docker。如果删除了容器,本地的数据也还是在的,这就实现了数据的持久化!