jenkins - 如何在 jenkins 中设置 kubectl

标签 jenkins kubectl

我的 jenkins 在 EC2 上运行并安装了 kubectl。我还配置了 kubectl 以与我在 AWS 中的 EKS 集群通信。

现在,我正在尝试使用 Jenkins 管道自动将我们的应用程序部署到 EKS。但是当 Jenkins 到达下面这段代码时

sh "kubectl apply -f platform_api_deployment.yml"

它向我展示了这个错误

/var/lib/jenkins/workspace/platform-api-pipeline/kubernetes@tmp    
/durable-2696d974/script.sh: line 1: kubectl: command not found

我已经尝试手动部署它并且工作正常。

最佳答案

基本上,您需要一个 kubeconfig 文件来与 API 服务器通信。因此,您只需要登录到安装了 jenkins 的服务器,然后切换到用户“可能是 root”,您可以从那里执行 kubectl 命令并在 shell 上手动执行以下命令。这些命令会将 kubeconfig 复制到 jenkins 用户根目录。之后重新运行 jenkins 管道。

sudo cp ~/.kube/config ~jenkins/.kube/
sudo chown -R jenkins: ~jenkins/.kube/

关于jenkins - 如何在 jenkins 中设置 kubectl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57719644/

相关文章:

image - 使用Jenkins docker镜像无法连接github

linux - Jenkins:Windows slave,linux master,如何正确配置(ant)构建工具?

ios - 在 Jenkins 中调用快照会导致模拟器超时

amazon-web-services - 在Pod与具有自己的pvc卷的每个Pod之间使用共享卷有什么优缺点(在有状态集的情况下)?

kubernetes - 如何将 kubectl 描述的输出格式化为 JSON

java - 加快 Jenkins 构建速度

jenkins - Office365ConnectorSend 管道步骤不起作用

kubernetes - 为所有命名空间创建 secret

yaml - kubectl YAML 配置文件等效于 "kubectl run ... -i --tty ..."

kubernetes - 如何使用 kubectl 检索当前用户授予的 RBAC