(6)容器数据持久化

图片[1]-(6)容器数据持久化-渗透云记 - 专注于网络安全与技术分享

上一篇介绍了一下docker容器管理常用命令,这一篇我们来介绍一下docke如何实现数据持续化,即文件挂载

(5)docker容器常用管理命令-渗透云记 - 专注于网络安全与技术分享
(5)docker容器常用管理命令-渗透云记 - 专注于网络安全与技术分享
沐寒的头像-渗透云记 - 专注于网络安全与技术分享初心赞助2023年2月13日 14:33
11269

容器数据持久化

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]-(6)容器数据持久化-渗透云记 - 专注于网络安全与技术分享

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命令时间,没办法保存挂载的数据卷的文件,只能保存容器自己产生的数据。

© 版权声明
THE END
喜欢就支持一下吧
点赞17 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容