Docker_5_数据卷

 

  • volume

  • 数据同步,本地和镜像内文件目录中的文件保持一致

  • 数据共享,镜像上的Mysql数据,同时使用本地Liunx上的文件

  • 数据备份,镜像上的Mysql数据,保存到本地LIunx上,防止因为误删镜像导致数据丢书

  • 具体实施是通过目录的挂载实现的

一:挂载

1:直接挂载

  • -v 命令

 docker run  -it      -v     /home/test:/home/bin/bash       centos
 docker 运行 交互模式 数据卷 本地目录: 镜像内文件目录 镜像名字

2:匿名挂载

 docker run -it -v /home/bin/bash centos                     #匿名挂载
 docker volume ls #查看卷
 docker volume inspect 卷名   #查看卷的详细信息

3:具名挂载

 docker run -it -v juming:/home/bin/bash centos              #具名挂载
 docker volume ls #查看卷
 docker volume inspect 卷名   #查看卷的详细信息
  • 权限

 docker run -it -v juming:/home/bin/bash:ro centos           #具名挂载-只读
  #只可以在本地操作,容器只能查看
 docker run -it -v juming:/home/bin/bash:rw centos           #具名挂载-默认-可读可写          
 docker volume ls #查看卷
 docker volume inspect 卷名   #查看卷的详细信息

4:DockerFile

 mkdir /home/test
 touch dockerfile
 vim dockerfile
            FROM centos
            VOLUME ["volume01","volume02"]
            CMD echo "----end----"
            CMD /bin/bash
 docker build -f dockerfile -t centos3 . #dockerbuild 理由文档和脚本构建自己的镜像
 docker images
 docker run -it centos3
 ls

二:实例

  • mysql

 docker run -d 
  -p 3306:3306
  -v /home/mysql/conf:/etc/mysql/conf.d
  -v /home/mysql/data:/var/lib/mysql
  -e MYSQL_ROOT_PASSWORD=123456
  --name mysql01
            mysql

 

 

 

posted on 2020-09-17 15:16  chenhe  阅读(85)  评论(0)    收藏  举报

导航