echo "Registering runner ${RUNNER_NAME} ..." /usr/bin/gitlab-ci-multi-runner register -r ${GITLAB_CI_TOKEN} sed -i 's/^concurrent.*/concurrent = '"${RUNNER_REQUEST_CONCURRENCY}"'/' /etc/gitlab-runner/config.toml echo "Starting runner ${RUNNER_NAME} ..." /usr/bin/gitlab-ci-m...
GitLab CI 最大的作用是管理各个项目的构建状态,因此,运行构建任务这种浪费资源的事情交给一个独立的 Gitlab Runner 来做就会好很多,更重要的是 Gitlab Runner 可以安装到不同的机器上,甚至是我们本机,这样完全就不会影响到 Gitlab 本身了。 安装 安装Gitlab Runner 非常简单,我们可以完全安装官方文档:https://...
三,在k8s里configmap里存储一个用于注册、运行和取消注册 Gitlab CI Runner 的小脚本 这里用到了第二步里面的token。 apiVersion: v1 data: run.sh: | #!/bin/bash unregister() { kill %1 echo "Unregistering runner ${RUNNER_NAME} ..." /usr/bin/gitlab-ci-multi-runner unregister -t "$(/usr...
$ helm install --namespace gitlab --name gitlab-runner *.tgz 1. 2. 3. 4. 查看相关的deployment/pod启动是否成功,若成功启动, 则在GitLab上可以看到注册成功的GitLab Runner, 如图: 3. 缓存cache的配置 GitLab Runner中对缓存方案的支持有限,所以我们使用挂载volume的方式做缓存。在上面的示例中, 我们...
CI_SERVER_URL:gitlab地址,如果是在k8s里,可以配置service。记得末尾加上/ci Runner资源 gitlab-runner-statefulset.yaml 代码语言:javascript 复制 apiVersion:apps/v1kind:StatefulSetmetadata:name:gitlab-ci-runnernamespace:gitlablabels:app:gitlab-ci-runnerspec:selector:matchLabels:app:gitlab-ci-runnerupdate...
在gitlab 里查看 runner 如果我们更新了 values.yaml 文件,只需要使用下面命令更新一下就可以了 # 更新helm upgrade gitlab-runner --namespace gitlab-runner ./gitlab-runner 运行流水线进行测试 .gitlab-ci.yaml 文件内容如下 default:tags:-kubernetes# 使用 k8s 的 runnerstages:-build-deploybuild:stage:...
[root@k8s-master01 gitlab]# cat gitlab-postgresql.yaml apiVersion: apps/v1 kind: Deployment metadata: name: postgresql namespace: kube-ops labels: name: postgresql spec: replicas: 1 selector: matchLabels: name: postgresql template:
首先需要在k8s集群部署一个gitlab-runner pod,并注册到GitLab中 在Git仓库编写 .gitlab-ci.yml 提交后会触发GitLab分发任务, 分配到任务的 gitlab-runner 调用 executor 按照Runner配置定义的默认镜像,或者CI脚本(.gitlab-ci.yml)定义的镜像来启动Task pod,来运行构建CI脚本定义的任务 ...
我们可以通过--docker-pull-policy指定 Executor 执行 Job 时 dokcer 镜像下载策略。--docker-volumes指定容器与宿主机(即 Runner 运行的服务器)的文件挂载映射关系。上面挂载的文件主要是用于 Runner 在执行 Job时,运用的一些 key,包括访问 gitlab、docker harbor 和 k8s 集群的 key。当然,如果还有其他文件需要共享...
Ns43F7xxxxxxx envVars: - name: RUNNER_EXECUTOR value: kubernetes tags: k8s runners: co...