• Docker数据卷持久化


    Docker提供三种不同的方式将数据从宿主机挂载到容器中:volumes,bind mounts和tmpfs。
    volumes:Docker管理宿主机文件系统的一部分(/var/lib/docker/volumes)。
    bind mounts:可以存储在宿主机系统的任意位置。
    tmpfs:挂载存储在宿主机系统的内存中,而不会写入宿主机的文件系统。
    作用:
    容器之间共享数据卷
    容器被删除,数据卷不会被删除而造成数据的丢失,从而实现持久化。
    实例:
     创建数据卷并查看详细信息。
    [root@linux-docker01 ~]# docker volume ls
    DRIVER              VOLUME NAME
    [root@linux-docker01 ~]# docker volume create nginx-vol
    nginx-vol
    [root@linux-docker01 ~]# docker volume ls
    DRIVER              VOLUME NAME
    local               nginx-vol
    [root@linux-docker01 ~]# docker volume inspect nginx-vol 
    [
        {
            "CreatedAt": "2018-06-26T16:40:28+08:00",
            "Driver": "local",
            "Labels": {},
            "Mountpoint": "/var/lib/docker/volumes/nginx-vol/_data",
            "Name": "nginx-vol",
            "Options": {},
            "Scope": "local"
        }
    ]
    volume模式创建一个容器挂载数据卷
    [root@linux-docker01 ~]# docker run -d -it --name=nginx-test --mount src=nginx-vol,dst=/usr/share/nginx/html nginx
    a130825851e415c284c54a94bc2659100b9f56a814e3d88d2f6cb78910a107bb
    [root@linux-docker01 ~]# docker exec -it nginx-test  bash
    root@a130825851e4:/# cd /usr/share/nginx/html/
    root@a130825851e4:/usr/share/nginx/html# ls
    50x.html  index.html
    [root@linux-docker01 _data]# pwd
    /var/lib/docker/volumes/nginx-vol/_data
    [root@linux-docker01 _data]# ls
    50x.html  index.html
    注:如果在src没有指定数据卷,则会自动创建,随机生成名字。
    Bind Mounts模式创建容器挂载数据卷
    [root@linux-docker01 ~]# mkdir -p /app/wwwroot
    [root@linux-docker01 ~]# docker run -d -it --name=nginx-test --mount type=bind,src=/app/wwwroot,dst=/usr/share/nginx/html nginx
    0353e05bc3083ec84480c6bf7bd83cf3972e84c675827f5760e4cd5029cd19f6
    注:
    1、绑定的源目录一定要存在,如果不存在则会抛出一个错误,不会自动创建。
    2、 如果挂载目标在容器中非空目录,则该目录现有内容将被隐藏
    官方文档:https://docs.docker.com/engine/admin/volumes/volumes/#start-a-container-with-a-volume
  • 相关阅读:
    JS魔法堂:阻止元素被选中
    JS魔法堂之实战:纯前端的图片预览
    CentOS6.5菜鸟之旅:纯转载Linux目录结构
    Vim杂记:Sublime的配色方案
    Vim杂记:markdown插件
    CentOS6.5菜鸟之旅:中文编辑器忍痛放弃Sublime
    JS魔法堂:Data URI Scheme介绍
    CentOS6.5菜鸟之旅:安装ATI显卡驱动
    JS魔法堂:获取当前脚本文件的绝对路径
    腊八蒜
  • 原文地址:https://www.cnblogs.com/xiaoliangxianshen/p/9231249.html
Copyright © 2020-2023  润新知