《OpenShift / RHEL / DevSecOps 汇总目录》
说明:本文已经在OpenShift 4.10环境中验证
GitLab 是一个完整的开源 DevOps 平台,作为一个单一的应用程序交付,从根本上改变了开发、安全和运营团队协作和构建软件的方式。GitLab 帮助团队将 DevOps 周期时间从几周缩短到几分钟,降低开发流程成本,缩短上市时间,同时提高开发人员的生产力。
在 OpenShift OperatorHub 中提供了 GitLab Operator,它提供以下功能:

apiVersion: apps.gitlab.com/v1beta1
kind: GitLab
metadata:
name: gitlab
namespace: gitlab-system
spec:
chart:
values:
certmanager:
install: false
global:
hosts:
domain: apps.cluster-bswtl.bswtl.sandbox975.opentlc.com
hostSuffix: null
ingress:
configureCertmanager: false
tls:
secretName: null
class: none
annotations:
route.openshift.io/termination: "edge"
nginx-ingress:
enabled: false
version: 6.1.1

$ oc create route edge gitlab --service=gitlab-webservice-default --port=http-workhorse -n gitlab-system
$ oc get route gitlab -n gitlab-system -o jsonpath=https://'{.spec.host}'; echo
$ oc get secret gitlab-gitlab-initial-root-password -o jsonpath="{.data.password}" -n gitlab-system | base64 --decode; echo



oc get secret gitlab-minio-secret -o jsonpath="{.data.accesskey}" -n gitlab-system | base64 --decode; echo
oc get secret gitlab-minio-secret -o jsonpath="{.data.secretkey}" -n gitlab-system | base64 --decode; echo
oc create route edge gitlab-minio --service=gitlab-minio-svc -n gitlab-system
oc get route gitlab-minio -n gitlab-system -o jsonpath=https://'{.spec.host}'; echo

oc create route edge gitlab-registry --service=gitlab-registry -n gitlab-system
oc get route gitlab-minio -n gitlab-system -o jsonpath=https://'{.spec.host}'; echo
用 Operator 在 OpenShift 上部署 GitLab
https://www.youtube.com/watch?v=nJDCUfbEmVI&ab_channel=GitLabUnfiltered
https://docs.gitlab.com/operator/openshift_ingress.html
https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/blob/master/doc/openshift_ingress.md