zoukankan      html  css  js  c++  java
  • docker对数据卷容器进行备份

    转载请注明出处

    官网的数据以及各大博客都没有对这个的具体说明,本人也是理解了好久。

    我们使用docker的过程中,使用共享的数据卷是经常的,那么。我们要怎么进行备份呢?
     
    首先,我们得了解下面4个命令
     
    1:打包数据
     
    tar -czvf /data/back.tar.gz /usr/
     
    2:运行docker容器
     
    docker run dbdata
     
    3:挂载数据卷容器中的数据卷
     
    docker run --volumes-from dbdata centos
    挂载数据卷容器名为dbdata到新的容器中
     
    4:挂载主机中现有的目录当作数据卷
     
    docker run -v /webapps:/data centos
    把主机中/data目录挂载到窗口中的/webapps目录下
     
     
    了解上面的4条命令后,我们就可以备份数据了
     
    docker run --privileged=true --volumes-from dbdata -v /sb:/sb centos tar czvf /sb/backup.tar.gz /dbdata

    参数说明

    • --privileged=true 是为了避免访问目录权限不足的情况,这是由于selinux引起的。
    • --volumes-from dbdata 是挂载需要备份的数据卷容器名称,它就是一个容器。
    • -v /sb:/sb 这是挂载主机目录到窗口中,第一个/sb是代表着容器的目录,第二个/sb是代表着主机的目录。
    • centos 是代表着容器的REPOSITORY的ID,这个ID可以用docker images命令查看。
    • tar czvf /sb/backup.tar.gz /dbdata 这部分放在后面,代表着容器启动成功后的命令。这部分就是对数据卷进行压缩,/sb/backup.tar.gz 这个目录是挂载的主机的目录,只要压缩到这个目录,那就相当于主机的目录也就有了相应的数据, /dbdata这个目录是挂载的数据卷容器中的目录,综合起来就是一组压缩命令,正好实现了把数据卷中的数据备份到当前主机中。

  • 相关阅读:
    表达式与运算符
    Python3 从零单排22_异常处理
    Python3 从零单排21_元类
    Python3 从零单排20_方法(绑定&内置)&反射
    Python3 从零单排19_组合&多态
    Python3 从零单排18_封装
    Python3 从零单排17_类的继承
    Python3 从零单排16_面向对象基础
    Python3 从零单排15_urllib和requests模块
    Python3 从零单排14_flask模块&mysql操作封装
  • 原文地址:https://www.cnblogs.com/zhuxiaojie/p/5947138.html
Copyright © 2011-2022 走看看