• docker数据卷管理


    docker数据卷:

    1.mount到主机中,绕开分层文件系统

    2.和主机磁盘性能相同,容器删除后依然保留

    3.仅限本地磁盘,不能随容器迁移

    docker提供了两种卷:

    1.build mount:

    将主机上的目录或文件mount到主机里

    使用-v选项指定路径,格式:

    docker run -d --name web -v /opt/website:/usr/share/nginx/html nginx

    直接获取容器内信息:

    1. [root@localhost ~]# docker run -it --rm nginx bash
    2. root@ad7a9552c36a:/# ls
    3. bin boot dev docker-entrypoint.d docker-entrypoint.sh etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
    4. root@ad7a9552c36a:/# cd /usr/share/nginx/html/
    5. root@ad7a9552c36a:/usr/share/nginx/html# ls
    6. 50x.html index.html
    7. root@ad7a9552c36a:/usr/share/nginx/html# cat index.html

    docker run -d --name web -v /www:/usr/share/nginx/html nginx
    

    根下创建了一个www的目录

     docker inspect web

     

    访问这个IP:

     

    报错403

    在刚刚新建的出来的www目录里创建一个页面:

     

     echo www1.org > index.html

    可以访问

     

     docker inspect web

    -v 可以指多个路径

    在指向路径的最后加:ro  表示只读 无法改写 

    2.docker managed volume

    build mount必须指定host文件系统路径

    docker managed volume不需要指定mount源 docker自动为容器创建数据卷目录

    默认创建的数据卷目录都在/var/lib/docker/volumes中

    如果挂载时指向容器内已有的目录,原有数据会被复制到volume中

    下载registry镜像:

     docker pull registry

    因为里面有:

     docker run -d --name web registry
    docker inspect web

    自动生成:

     

    如果删除容器:这个卷还在:

     docker volume ls

     

    需要手动回收:

     docker volume prune

     

    手动创建:

     docker volume create web

     

    1. docker run -d --name demo -v web:/usr/share/nginx/html nginx
    2. docker inspect demo

     

    没有报错:

     

     

  • 相关阅读:
    结合领域驱动设计,理解TOGAF之架构方法论
    Spring-day02 容器的概念,容器中的对象,IOP入门
    安装Mycat-web
    Python——异常
    JavaScript 事件
    Java继承的格式
    防静电门禁闸机管理系统的优点有哪些
    【云原生 | 44】Docker搭建Registry私有仓库之管理访问权限
    Web前端大作业—电影网页介绍8页(html+css+javascript) 带登录注册表单
    MySQL开发技巧——行列转换
  • 原文地址:https://blog.csdn.net/qq_58196606/article/details/127424198