在docker中挂载两个嵌套的只读挂载点

2024-03-15

我有一个docker-compose文件运行 PHP 并以嵌套方式安装一些卷。它已经工作了两年了。最近我又尝试了一次,但失败了,至少在 Docker for WSL 2 上是这样。以下是 docker-compose 文件中挂载的卷。

volumes:
   - ../src:/var/www/html:ro
   - ./userData:/var/www/html/userData:ro

请注意,第二个卷安装在第一个卷内。

Docker 无法挂载第二个目录,声称它无法更新只读文件系统。我可以删除:ro从第一次安装开始,它就可以工作了,但是 - 我真的希望两个安装都是只读的,并且我想保留外部文件系统(与src and userData)就这样。

我怎样才能让这种安装行为再次发挥作用?


你不能做到。嵌套堆需要在文件系统上创建目录。

所以你的解决方案是:

  • 禁用只读 - ../src:/var/www/html:ro
  • 创建链接ln -s ./userData ../src/userData
  • 不要使用嵌套安装,这是一个不好的做法。所以你的容器需要重新设计。

参考:https://github.com/moby/moby/issues/26051 https://github.com/moby/moby/issues/26051

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在docker中挂载两个嵌套的只读挂载点 的相关文章

随机推荐

  • 如何在 MongoDB 中处理小于 1970 的日期

    我有一个包含 生日 字段的文档 该字段的值也可能低于 01 01 1970 我该如何处理这个问题 例如 birthday gt newMongoDate strtotime 31 10 1968 这将创建一个 生日 值 1 1 1970 1
  • Tomcat 上的 SSL 证书 - 别名无法识别密钥

    想知道是否有人可以告诉我我在哪里搞砸了 我有一个 keytool 创建的密钥库 一个来自 Thawte 的主证书 辅助证书和 ssl 证书 我最初使用 openssl 创建了 CSR 然后使用记录的过程将私钥转换为 PKCS12 以导入到密
  • 将一行复制一定次数,然后每次将 30 分钟添加到时间戳(就像序列一样)

    样本数据 ID Location Type Trip End Number of periods 1298 Residential 02 01 2022 05 30 48 1298 Residential 03 01 2022 05 30
  • 可以在 PHP 中测试变量是否是静态的吗?

    PHP 中是否可以测试变量是否是静态的 我正在尝试创建一个神奇的方法 get它还查看静态变量 我发现property exists 当变量也是静态时返回 true 但我需要使用 代替 gt 我会期待吗 可以通过反射测试变量是否是静态的 cl
  • 构建多部分响应

    考虑到多个 HTTP 请求的响应 我必须从中构建一个多部分响应 我面临的问题是如何在最终的多部分响应中设置单个响应的响应标头 为了 例如 HttpClient client new HttpClient HttpRequestMessage
  • 带标头的 Alamofire POST 请求

    我正在尝试在 Swift 中使用 Alamofire 发出带有标头的发布请求 然而 我不断得到方法调用中的额外参数错误 我正在使用 Alamofire 4 5 版本 我无法找出错误 请查找附件中的代码 let headers Authori
  • 流星中的 Bootstrap 3 模态未显示

    我试图让 bootstrap 3 模态弹出流星应用程序 但没有成功 一切似乎都已就位 我已经在这里和其他地方搜索过 但它根本行不通 HTML 是
  • 如何使用 xml 设置颜色可绘制的圆角半径?

    在android网站上 有一个关于颜色绘图的部分 http developer android com guide topics resources available resources html colordrawableresourc
  • 计算成员中的 WHERE 子句

    我面临一些通过比较维度值来计算值的问题 我有 3 个维度 数据类型 客户 产品 和一个度量 GrossSales 如果我想要 ProductID 1 2 3 且 Dataype 4 5 6 的 GrossSales MDX 查询是什么 这里
  • 在数据库中存储年份[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 年份数据的最佳 PostgreSQL 数据类型是什么 例如 2006 年或 1847 年 TEXT SMALLINT DATE 理想情况下
  • 字符串性能 - Windows 10 下的 Python 2.7 与 Python 3.4 对比 Ubuntu

    Use case一个简单的函数 用于检查特定字符串是否在另一个字符串中的位置为 3 的倍数 请参阅此处现实世界的例子 https en wikipedia org wiki Stop codon 在 DNA 序列中寻找终止密码子 功能 sl
  • Android SD卡目录文件夹名称列表

    如何获取 SD 卡上特定目录中的所有文件夹 不是文件 的名称 例如 所有子文件夹名称 sdcard first level folder 我需要文件夹名称 因此我可以将完整路径 字符串 传递给方法 然后将其压缩 zip Thanks 我想你
  • Java SE 6 中 Sun JVM 的默认最大堆大小是多少?

    Java SE 6 中 Sun JVM 的默认最大堆大小是多少 即相当于设置 Xmx 看起来对于带有服务器级机器的 Java SE 5 it s http java sun com j2se 1 5 0 docs guide vm gc e
  • jsf 安全约束在用户未登录时保护链接?

    我有一个定义了安全约束的 JSF2 GlassFish 3 0 应用程序 示例如下 我的问题是 我有一个 注册 链接 当用户登录时不应访问该链接 也就是说 如果他们尝试点击 signup jsf 如果他们已登录 他们应该能够访问 所以如果他
  • Rails 模型 has_many 具有多个foreign_keys

    对 Rails 来说相对较新 并尝试使用具有姓名 性别 father id 和 mother id 2 个父母 的单个 Person 模型来建模非常简单的家庭 树 下面基本上是我想做的 但显然我不能在 has many 中重复 childr
  • 是否可以从 Android 应用程序执行 Shell 脚本

    我一直在尝试 Android 终端模拟器 Termux 这是一款优秀的应用程序 无需 root 访问即可访问 Android 操作系统 我希望能够实现的是从同一设备上安装的另一个 Android 应用程序中执行 Termux 中的脚本 命令
  • Storm程序的执行流程

    我是 Storm 的新手 试图了解不同方法的执行流程spout to bolt 就像spout有不同的方法一样 下一个元组 open 声明输出字段 启用 停用 Bolt 有类似的方法 准备 执行 清理 声明输出字段 那么谁能告诉我这些方法的
  • 将数据传递给 Polymer 元素

    使用 Web UI 时 我可以将数据传递给组件 如下所示
  • 卷积神经网络的 float16 与 float32

    标准是float32 但我想知道在什么条件下可以使用float16 我比较了运行相同的 covnet 和两种数据类型 没有发现任何问题 对于大型数据集 我更喜欢 float16 因为我可以更少担心内存问题 令人惊讶的是 使用 16 位是完全
  • 在docker中挂载两个嵌套的只读挂载点

    我有一个docker compose文件运行 PHP 并以嵌套方式安装一些卷 它已经工作了两年了 最近我又尝试了一次 但失败了 至少在 Docker for WSL 2 上是这样 以下是 docker compose 文件中挂载的卷 vol