如何通过Dockerfile为特权用户复制/添加资源?

时间:2016-06-09 09:53:58

标签: docker dockerfile

使用自定义配置文件从Dockerfile构建自定义容器的最佳方法是什么?我想做这样的事情:

FROM jboss/wildfly:latest
USER jboss
COPY configuration/standalone.xml /opt/jboss/wildfly/standalone/configuration/

但结果是复制的资源归用户“root”所有。这就是Docker文档解释COPY和ADD命令的方法。 USER开关被忽略。

所以我的问题是:我应该在复制/添加新资源后总是运行chown命令吗?

FROM jboss/wildfly:latest
USER jboss
COPY configuration/standalone.xml /opt/jboss/wildfly/standalone/configuration/
RUN chown -R jboss /opt/jboss/wildfly/standalone/configuration/

这对我来说有点笨拙吗?

1 个答案:

答案 0 :(得分:2)

  

这对我来说有点笨拙吗?

是的,它很笨拙,在issue 7537中进行了讨论,甚至在PR 9934中进行了修补。
但拒绝了。

您可以查看已合并的PR 10775及其COPY --user=选项。