基于 GitLab CI 的 kubectl 镜像配置
上图介绍 GitLab Runner 使用 docker in docker 模式启动 kubectl 镜像连接 k8s 的流程。
其中主要关注三点:
官方镜像(bitnami/kubectl)中的用户权限不够,在读取配置文件时报权限错误。所以要重写一下官方的 dockerfile,默认使用 root 权限运行镜像。
kubectl 的配置文件,是存放在宿主机的目录,然后先挂载到 GitLab Runner 的镜像,再由 GitLab Runner 启动 kubectl 镜像时,将配置文件复制到 kubectl 镜像中,使 kubectl 能正常读取配置文件。
kubectl 默认读取配置文件的环境变量是:$KUBECONFIG,我们需要在项目的 CICD 环境变量中,将该变量的值设置为 kubectl 镜像中存放配置文件的位置。
版权声明: 本文为 InfoQ 作者【白粥】的原创文章。
原文链接:【http://xie.infoq.cn/article/4461326e160d496de168bf87a】。文章转载请联系作者。
评论