Docker数据卷浅析及mysql测试实战

容器数据卷

打通容器与宿主机的一个操作

总结一句话:容器的持久化和同步操作,容器间也可以数据共享

使用数据卷

方式一:直接使用命令来挂载 -v
docker run -it -v 主机目录:容器内目录 -p
    测试同步:
可以在挂载好的文件放上文件试试看下效果
​

首先得有目标目录

比如需要把容器/home的内容映射到主机/home/xxx

需要新建mkdir xxx(这是创建目录)

通过docker inspect 容器id

发现mounts里有挂载内容

source 为主机内地址

Destination 为docker容器内地址

好处:我们以后秩序修改本地,容器内会自动同步

实战:Mysql的持久化问题

#启动mysql
docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -eMYSQL_ROOT_PASSWORD=密码  mysql:tag版本

通过msyqlyon 建立相应的链接并生成相应的数据库来测试效果

术语名词:

具名与匿名挂载

#匿名挂载
-v 容器内陆星
docker run -d -P --name nginx01 -v /etc/nginx nginx
# volumes(卷):存储持久化数据用
docker volume COMMAND  查看用法类似--help
docker volume ls  查看卷情况
##分两种
没用名字属于匿名挂在
docker run -d -P --name nginx02 -v wodenginx:/etc/nginx nginx
##通过 inspect命令找到相应目录
docker volume inspect wodenginx
##所有未指定挂载名录的都在/var/lib/docker/volumes之内
##如何区分几种挂载
-v 容器内路径            #匿名挂载
-v 卷名:容器内路径       #具名挂载
-v /宿主机路径:容器内路径 #指定路径挂载
##拓展
docker run -d -P --name nginx02 -v /etc/nginx:ro nginx
docker run -d -P --name nginx02 -v /etc/nginx:rw nginx
##ro read only  只能通过外部(宿主机)改
##rw read write
#关于权限问题
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值