我已经为jenkins/jnlp创建了一个docker镜像,并在kubernetes集群中使用它来旋转动态从属。这样,我就可以签出我的代码,并在动态从属上运行构建。
但是,当我在插件配置中提到卷(jenkins_home ie /mycom/jenkins)作为NAS持久卷声明时,我观察到挂载路径权限正在更改为“无人”,而不是"jenkins“。这使我的jenkins构建失败,因为它不能在相同的文件夹下创建工作区。
Kubernetes文档指出,我们可以将fsgroup详细信息作为安全上下文的一部分传递,安全上下文是pod定义的一部分。但我在jenkins-kubernetes插件中看不到这个选项。有什么方法可以将"RunAsUser“或"fsgroup”细节从jenkins传递给pod吗?
发布于 2018-02-13 01:40:32
我得到的解决办法是在Kubernetes Host的一个pod中提供对JENKINS_HOME的"777“访问。这也在所有其他创建的pod中持续存在。通过这种方式,每当我的容器使用jenkins用户运行时,它都能够在没有任何用户访问的jenkins_home目录中创建工作区。
发布于 2018-03-17 00:48:46
在使用helm chart安装jenkins时,可以选择指定RunAsUser和FsGroup。您还可以指定您的PersistentVolumeClaim。请在此处查看values.yaml - https://github.com/kubernetes/charts/tree/master/stable/jenkins
https://stackoverflow.com/questions/48533779
复制相似问题