使用docker数据卷解决挂载目录的时候文件消失不见的问题

这篇具有很好参考价值的文章主要介绍了使用docker数据卷解决挂载目录的时候文件消失不见的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

之前使用挂载目录挂载docker内的配置文件的时候,发现本地的目录为空,想到用容器卷来解决,解决完以后一些操作会方便很多

数据卷和挂载目录的区别

卷 (Docker Volume) 是受控存储,是由 Docker 引擎进行管理维护的。因此使用卷,你可以不必处理 uid、SELinux 等各种权限问题,Docker 引擎在建立卷时会自动添加安全规则,以及根据挂载点调整权限。并且可以统一列表、添加、删除。
而挂载目录而挂载目录那就没人管了,属于用户自行维护。你就必须手动处理所有权限问题。(不过可以通过添加–privileged=true解决)
数据卷 是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性:

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

注意:数据卷 的使用,类似于 Linux 下对目录或文件进行 mount,镜像中的被指定为挂载点的目录中的文件会复制到数据卷中
(仅数据卷为空时会复制)。
这就是原本的目的

$ docker volume create nginx-vol

默认创建在以下目录
/var/lib/docker/volumes/nginx-vol/_data
启动一个挂载数据卷的容器
在用docker run命令的时候,使用 --mount 标记来将 数据卷 挂载到容器里。在一次 docker run中可以挂载多个 数据卷。
下面创建一个名为 web的容器,并加载一个 数据卷 到容器的 /etc/nginx/ 目录。

$ docker run -p 8002:8002 -d 
--mount source=nginx-vol,target=/etc/nginx/
 --name nginx02 nginx

也可以使用-v完成挂载

$ docker run -p 8002:8002 -d 
-v  nginx-vol:/etc/nginx/
--name nginx02 nginx

完成以后如果忘记了路径可以使用以下命令查看卷的信息
docker inspect 容器id

"Mounts": [
            {
                "Type": "volume",
                "Name": "nginx-vol",
                # 这里
                "Source": "/var/lib/docker/volumes/nginx-vol/_data",
                # 和这里
                "Destination": "/etc/nginx",
                "Driver": "local",
                "Mode": "z",
                "RW": true,
                "Propagation": ""
            }

其他容器卷常用命令
$ docker volume rm volume_name
有的卷占用空间很大,如果想要清理卷可以使用
$ docker volume prune文章来源地址https://www.toymoban.com/news/detail-446272.html

到了这里,关于使用docker数据卷解决挂载目录的时候文件消失不见的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决重启Linux服务器后数据消失问题(重新挂载)

    目录 一、挂载 1.重新挂载 2.数据消失的原因 二、重启服务器 1.shutdown 2.其它关机重启指令 参考自 使用 reboot 命令重启服务器后,服务器内挂载的文件全部丢失。 那应该如何重新挂载呢? 我们想将10.6.6.28上的目录下的内容挂载到10.6.6.30的服务器下。 先使用 df -h查看 df -h df

    2024年02月08日
    浏览(51)
  • Centos系列:centos7 共享文件夹配置、使用mount -t cifs 挂载windows共享目录方法与问题解决

    1.创建共享文件夹 打开CentOS终端,输入命令,查看共享文件夹情况 2.挂载共享目录 在/mnt下创建hgfs文件夹,作为共享目录 挂载共享目录 在文件末尾添加 保存重启即可 如果centos系统因权限无法查看共享文件夹内容 大功告成!!! 参考网址: https://blog.csdn.net/u013112749/article/

    2024年02月02日
    浏览(53)
  • 【Docker】在容器中管理数据&&数据卷挂载以及宿主机目录挂载

                                      🎉🎉欢迎来到我的CSDN主页!🎉🎉                         🏅我是平顶山大师,一个在CSDN分享笔记的博主。📚📚         🌟推荐给大家我的博客专栏《【Docker】在容器中管理数据》。🎯🎯                         🎁

    2024年01月16日
    浏览(40)
  • 【Docker】Docker挂载和修改容器中的目录及配置文件的若干种方式

    我们知道,Docker相当于提供了一个 独立于宿主机的运行环境。当我们使用Docker部署了中间件例如nginx的容器后,一般都是需要修改配置文件的。那么我们想到的第一个方法就是进入容器去修改[1]。 1.进入容器内修改 首先我们需要有一个已经启动的容器。pull image后通过run-d -

    2024年02月08日
    浏览(34)
  • Docker-使用数据卷、文件挂载进行数据存储与共享

    默认情况下,在Docker容器内创建的所有文件都只能在容器内部使用。容器删除后,数据也跟着删除,虽然通常我们不会删除容器,但是一旦宿主机发生故障,我们重新创建容器恢复服务,那么之前容器创建的文件就会丢失,这会为我们带来不必要的麻烦。另外,由于在容器中

    2024年02月13日
    浏览(32)
  • Docker进阶数据卷&目录挂载及在线部署

    为了很好的实现数据保存和数据共享, Docker 提出了 Volume 这个概念,简单的说就是绕过默认的联合 文件系统,而以正常的文件或者目录的形式存在于宿主机上。又被称作 数据卷 Docker 中的数据卷(Volume)是用于持久化存储容器数据的一种机制。它可以将主机上的目录或文件

    2024年01月23日
    浏览(32)
  • 进阶Docker2:数据卷和挂载目录

    目录 准备 删除容器  创建并运行一个容器 数据卷(Volumes) 挂载数据卷 虚拟机端口映射 挂载目录(Bind mounts) 挂载目录 挂载文件 部署在线项目 docker 在容器中管理数据主要有两种方式: - 数据卷( Volumes ) - 挂载主机目录( Bind mounts ) 删除容器  创建并运行一个容器 挂

    2024年01月18日
    浏览(33)
  • Docker -v 挂载主机目录到容器中(及数据卷容器)

    使用 Docker 的过程中,经常需要挂载主机上的目录或文件到 Docker 容器中,以实现数据的共享或持久化。而 docker run -v 命令便是用于挂载主机目录到 Docker 容器中的常用命令。 在创建启动容器时,使用 -v 参数设置数据卷 注意事项: 目录必须是绝对路径 如果目录不存在,会自

    2024年02月10日
    浏览(38)
  • Oracle修改数据文件所在目录的挂载点小结

    如何修改Oracle数据库文件所在目录的挂载点名称。这里先简单介绍一下背景情况,这套数据库是刚搭建不久的一套Oracle 19c单机的UAT,数据库安装在/opt目录下,$ORACLE_HOME目录为/opt/oracle19c/product/19.3.0/db_1。由于前期挂盘,设置挂载点命名没有严格按规范操作,将数据文件和归档

    2024年01月25日
    浏览(33)
  • 如何在 Docker 中安装、配置和使用 Minio,并挂载目录

    Docker https://www.docker.com 是一种开源平台,用于开发、交付和运行应用程序。它利用容器技术,允许开发者将应用程序及其所有依赖项打包成一个标准化的容器,确保应用在不同环境中的一致性和可移植性。 Minio https://min.io 是一个开源的对象存储服务器,它兼容 Amazon S3 API,可

    2024年04月13日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包