设置gitlab初始root密码-Gitlab Helm chart

set gitlab Initial root password - Gitlab Helm chart

我正在使用 Gitlab helm chart 在我的集群上安装 Gitlab。我想设置 initialRootPassword 这样我就可以在不执行 kubectl get secret

的情况下登录
  ## Initial root password for this GitLab installation
  ## Secret created according to doc/installation/secrets.md#initial-root-password
  ## If allowing shared-secrets generation, this is OPTIONAL.  
  initialRootPassword: {}
    # secret: RELEASE-gitlab-initial-root-password
    # key: password

上面的块有点混乱。你能帮我解决这个问题吗?谢谢

initialRootPassword 指的是 kubernetes 中的一个 secret 对象,因此您必须首先在与您的 gitlab 实例相同的命名空间中创建一个秘密,然后将 initialRootPassword 指向它。

比如你想让root密码为“password”,首先你需要对其进行base64编码

$ echo -n "password"|base64
cGFzc3dvcmQ=

然后添加到kubernetes

# secret.yaml
apiVersion: v1
kind: Secret
metadata:
  name: gitlab-root-password
data:
  password: cGFzc3dvcmQ=
kubectl apply -f secret.yaml

还有其他方法可以创建秘密,see the docs 了解更多信息。

然后您可以设置 initialRootPassword

initialRootPassword:
    secret: gitlab-root-password
    key: password

这里的key是指secret对象中的data key的名字

另一种方法是使用 Gitlab default values,它允许您创建一个将自动使用的秘密对象,而无需显式设置 initialRootPassword

此示例取自gitlab docs(将<name>替换为发布名称)。

kubectl create secret generic <name>-gitlab-initial-root-password --from-literal=password=$(head -c 512 /dev/urandom | LC_CTYPE=C tr -cd 'a-zA-Z0-9' | head -c 32)