云原生应用管理:原理与实践
上QQ阅读APP看书,第一时间看更新

3.5.2 NOTES.txt

NOTES.txt文件是在helm install安装完毕后的提示性内容,一般而言,提示内容都会介绍下一步的使用方法,各种信息的获取途径,等等。在这个文件中,我们也可以使用表达式或对象引用操作来显示一些动态内容,下面截取部分信息来做一个简单介绍。

1.Get the WordPress URL.


{{- if .Values.ingress.enabled }}

  You should be able to access your new WordPress installation through

  {{- range .Values.ingress.hosts }}
  {{ if .tls }}https{{ else }}http{{ end }}:// {{ .name }}/admin
  {{- end }}

{{- else if contains "LoadBalancer" .Values.service.type }}

  NOTE: It may take a few minutes for the LoadBalancer IP to be available.
        Watch the status with: 'kubectl get svc --namespace {{ .Release.Namespace }} 
-w {{ template "wordpress.fullname" . }}'

首先判断Values.ingress.enabled是否开启,如果开启,就显示对应的ingress信息,这样用户就能通过访问ingress信息来打开对应的Wordpress页面。然后使用range遍历所有的ingress地址,这里会将每次遍历的值默认赋给变量.name。然后通过判断.tls对象是否为空来决定访问的路径是https或者http,最后将整个路径拼接起来。下面的else语句用来判断路径是否为负载均衡器创建的,如果是LoadBalancer,则提供一个命令来查询对应的svc。

2.Login with the following credentials to see your blog


  echo Username: {{ .Values.wordpressUsername }}
  echo Password: $(kubectl get secret --namespace {{ .Release.Namespace }} {{ template "wordpress.fullname" . }} -o jsonpath="{.data.wordpress-password}" | base64 --decode)

下一步就是读取登录的信息,这里通过kubectl命令直接读取对应的字段信息,然后使用base64-decode进行解析,这样就能输出最终的明文密码,方便进行登录。