linux-centos7-docker-容器储存永久保存
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux-centos7-docker-容器储存永久保存相关的知识,希望对你有一定的参考价值。
docker容器
docker缺点是容器删除,容器中所有的资料全部删除,
所以为了资料的长久保存需要外部数据卷,或者数据容器
按照我的理解...就是把物理机上的一个目录挂载到容器中,让容器使用物理目录来储存数据
命令也很简单,就是
-v 本地目录:容器目录 可以不用自己创建,它本身会自动创建没有的目录
-v /aaa:/aaa
有时候物理机没有关闭selinux的话可能容器是没有权限的,这时候需要给容器开启特权就是 --privileged=true 让容器有特权才能使用挂载目录,或者关闭selinux都可以
setenforce 0 临时关闭
或者有永久关闭
vim /etc/sysconfig/selinux
selinux=disabled
在docker详细信息中可以看到挂在消息
如果单独 -v /var 只是指定容器目录的话,
在docker本地目录会自动生成一个目录供给挂载,但是名字很难记
中间最长的一段代码就是目录名,是怎么生成的并不懂,反正不好记
--volumes-from 容器名
使用这个命令,可以直接使用已经生成的数据卷容器,相当于指定的这个容器用-v 配置了什么 这个新生成的容器也相同的拥有
可以简化命令,省的每次启动容器都要使用-v 一长串,如果是多个-v 会很乱生成一个数据卷容器就会轻松很多
使用docker命令来备份某个容器目录中的文件,或者整个目录
docker run
-rm 删除容器,备份完直接删除这个容器
--volumes-from 容器名 指定要备份哪个容器
-v 本地:容器目录
镜像名
tar cvf 压缩
/容器目录/名字.tar /需要备份的目录或者文件
完整命令例子
还原也简单,只需要把 cvf 改成 xvf即可 可以不用指定目录回复,直接选择备份的tar文件即可
docker rm -v -v是直接删除跟容器相关联的数据卷,但是要求该数据卷必须没有被占用,否则无法删除
使用-v 必须是数据完全不需要的情况下,否则丢失数据是很恐怖的事情
如果是自动生成的数据卷如果不及时清理,就会出现很多僵尸目录文件占用磁盘空间.因为他的命名方式很特殊,完全不明白是什么意思.
本文出自 “11627223” 博客,请务必保留此出处http://11637223.blog.51cto.com/11627223/1911964
以上是关于linux-centos7-docker-容器储存永久保存的主要内容,如果未能解决你的问题,请参考以下文章