Docker数据卷(volume)

数据卷

        数据卷是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。(容器内目录与宿主机目录对应的桥梁,修改宿主机对应的目录,docker会映射到容器内部,相当于修改了容器内的,反之也一样)数据卷将宿主机目录映射到容器内目录,方便我们操作容器内文件,或者方便我们迁移容器产生的数据。

命令

        docker volume create        创建数据卷

        docker volume ls                查看所有数据卷

        docker volume rm                删除指定数据卷

        docker volume inspect        查询某个数据卷的详情

        docker volume prune            清除数据卷

提示

        在执行docker run命令时,使用-v数据卷:容器内目录可以完成数据卷的挂载

        当创建容器时,如果挂载了数据卷且数据卷不存在,docker会自动创建数据卷

       数据卷 数据卷名称要唯一

       容器内目录 需要在官网查询对应的文件目录

例子

        nginx部署静态资源

           官网查询到nginx容器目前为 /usr/share/nginx/html

           所以启动nginx命令为

            docker run -d --name ng -p 80:80 -v nghtml:/usr/share/nginx/html nginx
             

             docker启动nginx,并挂载数据卷。如宿主机没有目录,docker会自动创建目录与nginx容器目录映射。

        

 或者

        -v 本地目录:容器内目录

        本地目录必须以“/” 或者“./” 开头,否则会当成数据卷名称挂载

        如:

        -v mysql:/var/lib/mysql  会被识别为一个数据卷叫mysql

        -v ./mysql:/var/lib/mysql  会被识别为当前目录下的mysql目录

  例子

          mysql挂载/root/mysql/data到容器内/var/lib/mysql

          mysql挂载/root/mysql/init到容器内/docker-entrypoint-initdb.d目录

          mysql挂载/root/mysql/config到容器内/etc/mysql/config.d目录

        启动命令

 docker run -d

--name mysql

-p 3306:3306

-e TZ=Asia/Shanghai

-e MYSQL_ROOT_PASSWORD=123

-v /root/mysql/data:/var/lib/mysql

-v /root/mysql/init:/docker-entrypoint-initdb.d

-v /root/mysql/conf:/etc/mysql/conf.d mysql


根据需要配置目录

       

补充: mkdir创建目录

            docker inspect mysql 查看    

        

  • 15
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值