【问题标题】:What permissions are required for docker host volume?docker 主机卷需要哪些权限?
【发布时间】:2015-05-22 18:22:43
【问题描述】:

我用 mysql 创建了一个 docker 镜像。我在 Dockerfile 中使用 VOLUME 命令来定义一个挂载的卷:

VOLUME ["/var/lib/mysql/"]

并告诉它在运行时挂载卷:

docker run -v /media/user/encrypted/:/var/lib/mysql/ mysql_with_secrets 

[为简单起见省略其他参数]

问题是容器没有启动。当使用主路径中的文件夹而不是 /media/user/encrypted/ 安装卷时,容器确实会启动。 /media/user/encrypted/ 是我的用户和根组拥有的已挂载加密分区。

我尝试通过各种方式更改分区的所有权,但仍然无法启动容器。在这种情况下,权限应该是什么?

谢谢!

【问题讨论】:

  • 您需要识别在容器内运行的进程的用户 ID,并将卷路径更改为该用户 ID 或使卷全局可写(推荐第一个)。但是,如果您的图像(即内部的用户 ID)在任何时候发生更改,则会中断。
  • 谢谢,效果很好!我希望只有您回答而不是发表评论,以便我可以将其标记为已接受的答案。
  • 我当时做了回答。

标签: ubuntu permissions docker


【解决方案1】:

您需要识别在容器内运行的进程的用户 ID,并将卷路径更改为该用户 ID,或者使卷全局可写(推荐第一个)。但是,如果您的图像(即内部的用户 ID)在任何时候发生更改,则会中断。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-12
    • 2017-06-30
    • 2015-11-04
    • 2014-08-28
    • 2015-12-28
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    相关资源
    最近更新 更多