Cloudbees Docker插件 – “?”文件夹

我使用Cloudbees Docker Plugin 1.9和Jenkins 2.25在Docker容器中构build我的项目。

Jenkins本身也运行在Ubuntu 14.4上的Docker 1.12.2下。

JENKINS_HOME目录被挂载为Volume,因此每个作业,工作空间等都可以在主机系统的User“ubuntu”下find。

使用Cloudbees Docker插件运行作业时,会创build一个“?” 包含不同隐藏目录的工作区文件夹(如.oracle_jre_usage,.m2,.gradle等)

任何人都可以解释一下,Jenkins Job的部分/ Plugin创build了这个文件夹,为什么它被命名为“?”

将源文件夹装入作为WORKDIR进行构build的Maven容器时,遇到了类似的问题。

JRE似乎将WORKDIR/$(id -un)作为主目录(设置中的${user.home} )并创build这些文件夹。
'?' 可能是未能解决在容器中的主机的UID的结果,我用docker run --rm -u $(id -u):$(id -g) ...
我能够修改apache-maven/conf/settings.xml来更改path,如果.m2将caching保存在另一个主机上。 然而,由于这个问题 .oracle_jre_usage将始终创build并logging时间戳。

该解决scheme可能不会将WORKDIR设置为工作区,因此${user.home}将指向/?/ ,该容器将被删除。