gitlab_runner部署yaml

明月清风 2020-07-27 256浏览 0条评论
首页/正文
分享到: / / / /

在k8s中部署gitlab runner

安装helm

https://github.com/helm/helm

前往helm官方仓库,根据自己的环境安装helm。

也可直接下载对应环境已构建好的压缩包,解压后将helm二进制文件复制至PATH变量下的目录中。

添加官方helm仓库

我们通过官方helm仓库来进行部署,也便于后期的升级维护。 

https://charts.gitlab.io/

仔细阅读一下官方chart的说明文件,根据自己的需求修改添加一下配置即可。

配置示例

---
  #gitlab的地址
  gitlabUrl: "https://***"
  #开启rbac
  rbac:
    create: "true"
  #runner注册token,在全局runner设置页面
  runnerRegistrationToken: "***"
  #具体runner参数
  runners:
    #容器镜像
    image: "***"
    #镜像拉取策略
    imagePullPolicy: "if-not-present"
    #CI容器运行命名空间(非runner的运行命名空间)
    namespace: "gitlab-runner"
    #runner标签
    tags: "***"
    #runner 容器中需要添加的自定义变量,如helm、gradle等,我们可以通过变量来指定一些环境,避免需要自构建容器镜像,建议直接使用官方镜像,后期升级构建环境也方便,后续人员维护也直观。
    env:
      name: value
    #runner缓存,根据需要选择。可以使用挂载PVC的方式来进行缓存,这样就需要自定义一些缓存方式。如使用此方式,就可以使用gitlab runner的cache字段来添加一下缓存了,各有优劣。
    cache:
      #自建环境的话,目前国内可选的就是S3了,可以使用支持S3协议的存储,如minio
      cacheType: s3
      cachePath: "gitlab_runner"
      cacheShared: true
      s3ServerAddress: minio.chaohi-public.svc.cluster.local:9000
      s3BucketName: gitlab-cache
      s3BucketLocation: 
      s3CacheInsecure: true
      secretName: minio
  #官方提供的shell脚本入口,会在CI运行前执行,这里我们写了一个cat添加配置文件内容,用来给runner的POD添加PVC挂载,做一些缓存与持久化的数据,其他类型请参考官方文件说明(不支持subpath)。
  preEntrypointScript: |    
    # kubernetes volumes
    cat << EOF >> /home/gitlab-runner/.gitlab-runner/config.toml
          #k8s PVC
          [[runners.kubernetes.volumes.pvc]]
            #名称
            name = "***"
            #挂载路径
            mount_path = "/opt/"
          #k8s secret
          [[runners.kubernetes.volumes.secret]]
            name = "***"
            mount_path = "/cert/"
    EOF

 

最后修改:2020-07-27 16:07:52 © 著作权归作者所有
如果觉得我的文章对你有用,请随意赞赏
扫一扫支付

上一篇
登录即可评论哦~

评论列表

还没有人评论哦~赶快抢占沙发吧~