四、部署Gitlab Runner (K8s集群中)

iqor 2026-1-16 24 1/16

“代码都乖乖躺进 GitLab 仓库了,现在该给 CICD 配个‘打工人’了 —— 接下来咱们给 GitLab 安排个 Runner 插件,让它帮咱们自动搬砖~”

  1. 获取GitLab Runner注册Token 说明:在GitLab网页端→项目→Settings→CI/CD→Runners→Expand,复制注册Token

  2. 回到gitlab-ci目录

    cd /opt/gitlab-ci
  3. 解压gitlab-runner压缩包 说明:解压CI/CD相关软件包,准备部署资源

    tar -zxf gitlab-runner-0.43.0.tgz
  4. 备份并配置values.yaml 说明:修改GitLab地址、注册Token等核心配置

    # 备份原配置文件
    cp gitlab-runner/values.yaml gitlab-runner/values.yaml.bak
    
    # 写入正确配置
    cat > gitlab-runner/values.yaml << EOF
    image:
      registry: registry.gitlab.com
      image: gitlab-org/gitlab-runner
    imagePullPolicy: IfNotPresent
    
    gitlabUrl: "http://192.168.108.159:30880/"
    runnerRegistrationToken: "GR13489413pWjwoyyBHzyqeKzBRbB"
    unregisterRunners: true
    terminationGracePeriodSeconds: 3600
    concurrent: 10
    checkInterval: 30
    sessionServer:
      enabled: false
    
    rbac:
      create: true
      rules: []
      clusterWideAccess: false
      podSecurityPolicy:
        enabled: false
        resourceNames:
        - gitlab-runner
    
    metrics:
      enabled: true
      portName: metrics
      port: 9252
      serviceMonitor:
        enabled: false
    
    service:
      enabled: false
      type: ClusterIP
    
    runners:
      config: |
        [[runners]]
          [runners.kubernetes]
            namespace = "{{.Release.Namespace}}"
            image = "ubuntu:16.04"
      cachePath: "/home/gitlab-runner/ci-build-cache"
      cache: {}
      builds: {}
      services: {}
      helpers: {}
    
    securityContext:
      allowPrivilegeEscalation: false
      readOnlyRootFilesystem: false
      runAsNonRoot: true
      privileged: false
      capabilities:
        drop: ["ALL"]
    
    podSecurityContext:
      runAsUser: 100
      fsGroup: 65533
    
    resources: {}
    affinity: {}
    nodeSelector: {}
    tolerations: []
    hostAliases: []
    podAnnotations: {}
    podLabels: {}
    priorityClassName: ""
    secrets: []
    configMaps: {}
    volumeMounts: []
    volumes: []
    EOF
  5. 部署GitLab Runner(Helm方式)

    helm install gitlab-runner ./gitlab-runner -n gitlab-ci
  6. 检查部署状态 说明:验证Runner是否成功部署并运行

    # 查看Helm发布状态
    helm list -n gitlab-ci
    
    # 查看K8s资源状态
    kubectl get -n gitlab-ci all
  7. 验证注册结果 说明:回到GitLab网页端刷新页面,查看Runner是否成功注册

 

- THE END -

iqor

1月17日10:50

最后修改:2026年1月17日
1

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论