什么是容器数据卷?
Docker容器中产生的数据同步到本地,这就是卷技术,目录的挂载,将我们容器内的目录,挂载到宿主机上!
使用数据卷
方式一:使用命令挂载 -v
docker run -it -v 主机目录:容器内目录
方式二:
Dockerfile:用来构建docker镜像的构建文件!
实战:mysql
获取镜像:
docker pull mysql:5.7
运行容器数据挂载:
官网命令:docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
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=mysql01 mysql:5.7
-d 后台运行
-p 端口映射
-v 卷挂载
-e 环境配置
--name 容器名字
如何确定是具名挂载还是匿名挂载,还是指定路径挂载
-v 容器内路径 # 匿名挂载
-v 卷名:容器内路径 #聚名挂载
-v /宿主机路径:容器内路径 # 指定路径挂载
扩展:
通过-v 容器内路径:ro / rw 改变读写权限
ro readonly # 只读
rw readwrite # 可读可写
# 一旦设置了这个权限,容器对我们挂载出来的内容就有了限定!!(针对容器来说)
docker run -d -P --name nginx02 -v juming-nginx:/etc/nginx/ro nginx
docker run -d -P --name nginx02 -v juming-nginx:/etc/nginx/rw nginx
ro 只能通过宿主机改变,容器内部不能操作
浙公网安备 33010602011771号