老蒋的知识库

  • 首页
  • 文章归档
  • 关于页面

  • 搜索

GitLab CICD Job调用K8S Api

发表于 2023-04-11 | 分类于 K8S部署 | 0 | 阅读次数 49

参考资料

kubeconfig文件指定访问的K8S集群: https://kubernetes.io/zh-cn/docs/concepts/configuration/organize-cluster-access-kubeconfig/
通过Kubectl镜像控制K8S: https://hub.docker.com/r/bitnami/kubectl/
Gitlab CICD设置环境变量: https://docs.gitlab.cn/jh/ci/variables/#对于一个项目

操作步骤

获取kubeconfig,在k8s的master节点上执行以下命令获取编码字符串

echo $(cat ~/.kube/config | base64) | tr -d " "

将编码字符串存入GitLab CICD的环境变量中: 项目页面 -> 设置 -> CICD -> 变量 -> 添加变量KUBE_CONFIG,勾上受保护、隐藏保证变量不泄露

编写.gitlab-ci.yml文件

stages:
  - run_k8s
run_k8s_job:
  image: bitnami/kubectl:1.25.3-debian-11-r4
  stage: run_k8s
  script:
    - echo $KUBE_CONFIG |base64 -d > kube-config # 将配置文件转码后写入 kube-config
    - kubectl --kubeconfig=kube-config -n gitlab get pods # 控制k8s执行命令
  • 本文作者: jagger
  • 本文链接: /archives/gitlabcicdjob调用k8sapi
  • 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!
K8S部署GitLab Runner 实现持续集成CICD
Gitlab CICD 结合 K8S Job,自动更新前端代码
jagger

jagger

66 日志
31 分类
0 标签
Creative Commons
0%
© 2026 jagger
由 Halo 强力驱动