Docker数据管理

由于docker 重启全部的docker数据都会丢失。怎么保存数据到本址linux

一、挂载本地的目录到容器里(备份)
docker run -itd -v /data/:/data centos bash
-v 指定挂载目录,前面的是宿主机目录,后面的是容器目录。建立成功后两个目录内容会同步,从面达到备份的目的。
Docker数据管理Docker数据管理docker

二、挂载数据卷centos

其实咱们挂载目录的时候,能够指定容器name,若是不指定就随机定义了。好比上面咱们没有指定,它就生成了一个名字为relaxed_franklin,这个名字可使用命令 docker ps  看最右侧一列![]bash

docker run -itd --volumes-from relaxed_franklin centos bashide

--volumes-from后面跟已启动的主机名,使用 relaxed_franklin的数据卷。咱们使用了centos 建立了新的容器
Docker数据管理3d

三、定义数据卷容器
有时候,咱们须要多个容器之间相互共享数据,相似于linux里面的NFS,因此就能够搭建一个专门的数据卷容器,而后其余容器直接挂载该数据卷。
首先创建数据卷容器
docker run -itd -v /data/ --name testvol centos  bash  //注意这里的/data/是容器的/data目录,并不是本地的/data/目录。 而后让其余容器挂载该数据卷
docker run -itd  --volumes-from testvol aming123 bashcode

四、数据卷备份恢复
备份
mkdir /data/backup
docker run --volumes-from testvol -v  /data/backup/:/backup centos tar cvf  /backup/data.tar /data/blog

说明:首先咱们须要使用testvol数据卷新开一个容器,同时咱们还须要把本地的/vol_data_backup/目录挂载到该容器的/backup下,这样在容器中/backup目录里面新建的文件,咱们就能够直接在/data/backup/目录中看到了。 而后再把/data/目录下面的文件打包到成data.tar文件放到/backup目录下面。
恢复
思路: 先新建一个数据卷容器,再建一个新的容器并挂载该数据卷容器,而后再把tar包解包。
新建数据卷容器:
docker run -itd -v /data/ --name testvol2 centos bash同步

挂载数据卷新建容器,并解包:
docker run --volumes-from testvol2  -v /data/backup/:/backup centos tar xf /backup/data.tar
Docker数据管理it

相关文章
相关标签/搜索