• 《Docker技术入门与实践》Docker入门2-数据管理


    数据管理

    目的:对容器中数据备份,或者 多个容器间共享数据

    方式

    1. 数据卷
    2. 数据卷容器

    6.1 数据卷
    docker run 的时候通过 -v 创建 数据卷
    在这里插入图片描述
    将主机的 /tmp/docker目录加载到容器的 /tmp/container中
    在这里插入图片描述
    测试,将主机的 /tmp/docker目录加载到容器的 /tmp/container中
    docker run -it --name cent -v /tmp/docker:/tmp/container centos /bin/bash
    在这里插入图片描述
    如图,在容器中编辑能够在宿主机上看见对应文件
    在这里插入图片描述

    6.2 数据卷容器
    使用数据卷容器,用它提供的数据卷供其他容器挂载
    1.启动 数据卷容器 (dbdata ) docker run -it -v /dbdata --name dbdata centos
    2.启动其他容器(可以开启多个),并使用 --volumes-from挂载 容器(dbdata )
    3.在任一容器的 /dbdata目录下 操作文件,都能使其他容器发现

    注意 数据卷容器 本身不需要保持启动。
    

    在这里插入图片描述
    在这里插入图片描述

    6.3 利用数据卷容器迁移数据

    docker run --volumes-from dbdata -v $(pwd):/backup --name worker centos tar cvf /backup/backup.tar /dbdata
    
    创建了一个woker容器,--volumes-from dbdata 加载了dbdata的数据卷容器 到 worker容器, -v $(pwd):/backup 挂载主机的当前目录到容器的/backup目录,启动后 使用 tar cvf 将
    容器的/dbdata(也就是容器卷的共享目录)内容打包到 /backup/backup.tar 即主机的当前目录。
    ps: 挂载 dbdata到woker的/dbdata,挂载主机$pwd到worker的/backup ,woker打包/dbdata到/backup
    之后只需要 定时 docker start worker 实现定时备份。
    

    在这里插入图片描述

  • 相关阅读:
    添加egit插件
    Git使用教程
    mysql set names 命令和 mysql字符编码问题
    git常用命令
    前端WEB编辑器-------webstrom
    maven 常见错误解决方法
    java -jar 执行 eclipse export 的 jar 包报错处理
    数据库(DBUtils)
    数据库(JDBC、DBUtils)
    rabbitmq Exchange四种模式
  • 原文地址:https://www.cnblogs.com/thewindkee/p/12873146.html
Copyright © 2020-2023  润新知