挂载的Docker卷中的权限被拒绝

杀手123

我和Docker玩了一段时间了,我的挂载卷总是有权限问题。

实际上,当我使用docker-compose在Docker容器中运行映像时,我的卷继承了该容器的所有者,并且成为root:root,因此我无法编辑或将卷复制到其他位置。

谁能告诉我是否有任何Docker方法来解决此问题?

异戊二烯
  • 您可以将用户指令放入docker-compose文件(与相同docker run --user someuser ...),以使容器进程采用现有主机用户的ID /组。

  • 您还可以在容器中设置umask,以使创建的文件组或世界可读/可写(无论是否以root身份运行,但始终不以root身份运行始终是一个好主意)。

  • 您可以考虑构建映像以与其他USER一起运行(即,在Dockerfile中添加USER语句)。该用户的名称无关紧要,但是通常使数字ID与主机上的ID匹配,以便由容器进程创建的所有文件都归该ID所拥有。在主机端,它们似乎由具有相同数字ID的用户ID所拥有。如果您想花哨的话,可以对小组进行同样的操作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章