1

我正在通过 helm 在 kubernetes 上设置我的 jenkins 来运行我的 java 部署,

这会为每个构建生成新的 pod -> 足够公平

然后我看到我需要存储一些将被其他构建使用的 maven jar,

所以我想出了NFS安装并通过jenkins configure(Web控制台)将它安装到/home/jenkins/.m2

然后我不断得到

error org.apache.maven.repository.LocalRepositoryNotAccessibleException: Could not create local repository at /home/jenkins/.m2/repository

我什至试过

securityContext: runAsUser: 1000 fsGroup: 1000 在部署.yaml

我尝试添加

USER root RUN chown -R root /home/jenkins

在从容器中

它只是没有 .m2 ,奴隶无法在这个 pvc 上写任何东西。

在这一点上,我很困惑问题可能出在哪里。有人可以帮忙吗?

4

1 回答 1

2

我有类似的问题。我这样解决了:

  • 制作自己的jnlp图像,修改,安装了maven
  • 我通过 maven 配置将 m2 从 jenkins 主目录移到 /opt/m2
  • 创建了永久性磁盘,并用它绑定了 pv 和 pvc 并安装在 pod 内的 /opt/m2 上
  • 最后,我在 Dockerfile 中为 jnlp 设置了用户运行映像为 ROOT,因为 kubernetes 上的每个挂载都以 root 身份挂载。不是很优雅但可行的解决方案
于 2019-02-07T12:40:58.133 回答