我正在配置Kubernetes系统上的Jenkins。构建工作正常,但是为了部署,我们需要调用kubectl或helm。目前,我正在使用以下镜像:
- lachlanevenson/k8s-kubectl:v1.8.8
- lachlanevenson/k8s-helm:latest
然而,它失败并抛出异常:“来自服务器的错误(Forbidden):禁止使用pods:用户“system:serviceaccount:jenkins:default”无法在命名空间“jenkins”中列出pods”
Jenkins脚本很简单:
def label = "worker-${UUID.randomUUID().toString()}"
podTemplate(label: label,containers: [
containerTemplate(name: 'kubectl', image: 'lachlanevenson/k8s-kubectl:v1.8.8', command: 'cat', ttyEnabled: true)
],
volumes: [
hostPathVolume(mountPath: '/var/run/docker.sock', hostPath: '/var/run/docker.sock')
]){
node(label) {
stage('Run kubectl') {
container('kubectl') {
sh "kubectl get pods"
}
}
}
}
请问有什么问题吗?
谢谢,