对于更快的构建,我想在gitlab-runner中重用我的gradle-user-home。为此,我创建了一个pvc,并将其安装在我的构建容器上。我可以使用默认的舵图吗?
答案 0 :(得分:1)
因此,如果您看到here。在默认的“舵图”上没有定义PVC(物理体积声明)或PV(物理体积)。
您必须拥有这样的东西:
volumeMounts:
- name: gradle-user-home <== add this
mountPath: /path/to/home
subPath: home
- name: runner-secrets
mountPath: /secrets
- name: etc-gitlab-runner
mountPath: /home/gitlab-runner/.gitlab-runner
- name: scripts
mountPath: /scripts
{{- if .Values.certsSecretName }}
- name: custom-certs
readOnly: true
mountPath: /home/gitlab-runner/.gitlab-runner/certs/
{{- end }}
resources:
{{ toYaml .Values.resources | indent 10 }}
volumes:
- name: runner-secrets
emptyDir:
medium: "Memory"
- name: etc-gitlab-runner
emptyDir:
medium: "Memory"
- name: init-runner-secrets
projected:
sources:
{{- if .Values.runners.cache }}
- secret:
name: {{ template "gitlab-runner.cache.secret" . }}
items:
- key: accesskey
path: s3-access-key
- key: secretkey
path: s3-secret-key
{{- end }}
- secret:
name: {{ template "gitlab-runner.secret" . }}
items:
- key: runner-registration-token
path: runner-registration-token
- key: runner-token
path: runner-token
{{- if .Values.certsSecretName }}
- name: custom-certs
secret:
secretName: {{ .Values.certsSecretName }}
{{- end }}
- name: scripts
configMap:
name: {{ template "gitlab-runner.fullname" . }}
volumeClaimTemplates: <== Add this
- metadata:
name: gradle-user-home
spec:
accessModes: ["ReadWriteOnce"]
resources:
requests:
storage: 10Gi
请注意,这只是一个粗略的草稿模板。如果要使其成为Helm图表,则必须转换为适当的Helm模板。 (这恰好是Golang模板)
如果不需要,您不必修改模板。如果需要,您可以直接修改部署:kubectl -n <namespace> edit deployment <gitlab-runner-deployment>
此外,如果您使用的是PVC(物理体积声明),则必须定义默认的Kubernetes Storage Class
希望有帮助!