上一篇介绍了一下docker容器管理常用命令,这一篇我们来介绍一下docke如何实现数据持续化,即文件挂载
容器数据持久化
Docker提供两种方式将数据从宿主机挂载到容器中:
- volumes:Docker管理宿主机文件系统的一部分(/var/lib/docker/volumes)。
- bind mounts:将宿主机上的任意位置的文件或者目录挂载到容器中。
volumes示例
1、创建数据卷
docker volume create nginx-vol
docker volume ls
docker volume inspect nginx-vol
创建一个nginx-vol的数据卷
列出创建的数据卷
查看创建的数据卷的详细信息
2、使用数据卷
docker run -d --name=nginx-test --mount src=nginx-vol,dst=/usr/share/nginx/html nginx
新建一个命名为nginx-test的容器,将数据卷nginx-vol挂载到/usr/share/nginx/html目录
docker run -d --name=nginx-test -v nginx-vol:/usr/share/nginx/html nginx
另外一种写法,使用-v参数,:前面写挂载目录,:后面写需要挂载到容器的目录
推荐使用-v参数,便于理解,参数较少
bind mounts示例
docker run -d --name=nginx-test -v /app/wwwroot:/usr/share/nginx/html nginx
与数据卷挂载类似,只是我们使用具体的路径,方便后期管理
注意
提示:可以将同一个文件同时挂载到多个容器,这样可以便于数据同步
构造镜像时间,也就是使用commit命令时间,没办法保存挂载的数据卷的文件,只能保存容器自己产生的数据。
「渗透云记」公众号里主要记录我每天的所思所想,我会坚持更新质量不错的文章,感兴趣的小伙伴可以扫描下方二维码,谢谢支持!© 版权声明
安全小天地的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
安全小天地拥有对此文章的修改、删除和解释权限,如转载或传播此文章,需保证文章的完整性,未经允许,禁止转载!
本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!!访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。详情见本站的“免责声明”如果有侵权之处请第一时间联系我们删除。敬请谅解!E-mail:anquanclub@foxmail.com
THE END
请登录后查看评论内容