码迷,mamicode.com
首页 > 其他好文 > 详细

Docker 存储数据

时间:2018-01-07 14:07:50      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:run   目录   进入   content   命令   情况   文件   html   消失   

默认情况下运行容器执行完操作后,容器会立即退出处于停止状态,之前在容器中所操作的修改和储存的数据都会一并消失,

为了能存储数据,docker提供了数据卷和数据卷容器来解决这个问题。

数据卷:

数据卷是一个可供一个或多个容器使用的特殊目录,可以提供很多有用的特性:

  • 数据卷可以在容器之间共享和重用
  • 对数据卷的修改会立马生效
  • 对数据卷的更新,不会影响镜像
  • 数据卷默认会一直存在,即使容器被删除

在运行容器的时候,创建一个数据卷:

docker run --name="centos7vol" -itd -v /data  centos:latest?

 

进入容器后可以看到data目录已经挂载到容器中,那么容器映射的到本地的数据卷在哪里呢?

docker inspect CONTAINER ID?

 

通过执行上述命令后,可以查看”Mounts”段中的内容得知映射到本机的目录。

指定本机目录,映射到容器:

docker run --name="centos7test" -itd -v /data:/data centos:latest?

 

映射单个文件到容器中:

docker run --name="centos7lf" -itd  /path/to/filename.tar.gz:/filename.tar.gz centos:latest?

 

删除数据卷:

docker rm -v CONTAINER ID ?#删除容器同时删除数据卷

 

数据卷容器:

数据卷容器本质上也是一个容器,只不过数据卷容器提供数据卷供其它容器挂载使用。

创建一个数据卷容器:

docker run --name="datavolumes" -itd -v /data centos:latest?

 

创建容器使用数据卷容器:

docker run --name="centos7" -itd --volumes-from datavolumes centos:latest?

#数据卷容器并不需要一直运行,在创建数据卷容器的时候也可以将本机卷映射到数据卷容器。

Docker 存储数据

标签:run   目录   进入   content   命令   情况   文件   html   消失   

原文地址:https://www.cnblogs.com/ownlate/p/8227549.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!