Docker数据卷挂载

使用docker运行软件或者项目的时候很容易发现一个问题:整个项目都在docker中运行,那么它产生的一些数据也会在docke容器中,那么今后都不能删除这个docker容器了,因为会连带着产生的一些数据全部删除了。不过既然docker这么流行,肯定有方式解决这个问题,那就是将容器外的文件挂载到容器中,其实就是将容器内部的文件地址指向容器外面liunx的文件系统中指定的文件上,这样数据的写入和读取都操作容器外面的文件,那么如果容器升级或者删除再重新安装,数据都不会丢失了。、

今天这里就讲如何将外部的文件挂载到容器内的指定文件夹上,docker默认可以管理容器外部的一些文件,地址一般在 /var/lib/docker/volumes,它是docker默认的文件卷地址,在这个文件夹中创建卷的命令是:

docker volume create [文件夹名字]

创建完成后可以通过命令查看创建的volume,使用docker volume ls,这里创建了html文件夹,并用ls命令查看是否创建成功。

Docker数据卷挂载_文件名

还可以用 docker volume inspact [volume文件名] 查看文件的详细信息,比如创建时间、所在liunx系统的绝对路径等

Docker数据卷挂载_docker_02

如果要将此文件夹挂载到容器中,命令是,如果volume文件夹不存在会自动创建文件夹

docker run -v [volume文件夹]:[容器中文件路径] [镜像名称]:latest

也可以用 --mount参数,。不过与-v不同的是,如果volume文件夹本来不存在,则不会自动创建文件夹。会报错提示找不到文件夹

docker run --mount source=[volume文件夹],target=[容器中文件路径] [镜像名]:latest

最后再说下删除volume文件,docker有两种删除方式,一个是删除不使用的volume文件,使用docker volume prune,还可以用docker volume rm [volume文件名]删除指定的volume文件

docker volume prune
docker volume rm [volume文件名]

好了docker的卷创建删除和挂载基本操作都在这里了,不过要注意的是:

1.目标路径必须是容器内部的绝对路径。

2.如果要在多个容器之间共享数据,则需要使用相同的挂载路径和选项。

3.如果挂载了主机上的目录,则容器内的更改将反映在主机上,并且主机上的更改将反映在容器内。

4.如果挂载了数据卷,则数据将在容器停止和删除后仍然存在。

总之,使用挂载可以让容器访问主机上的文件系统,并可以在多个容器之间共享数据。

好了,以上如果有问题可以在评论区给我留言

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

baker_zhuang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值