上下文
假设我通过以下进入暴露了grafana
# Helm value file
grafana:
ingress:
enabled: true
annotations: {}
hosts:
- host: chart-example.local
paths: ["/grafana/"]
为了克服这个反向代理引发的相对路径问题,我使用了一个我使用过多次的有用机制:grafana的docker映像完全可以用ENV VARS配置。在这个文档之后,我写了(还没有使用变量(:
kind: Deployment
.....
containers:
- name: {{ .Chart.Name }}-grafana
image: "{{ .Values.grafana.image.repository }}:{{ .Values.grafana.image.tag | default .Chart.AppVersion }}"
env:
- name: GF_SERVER_ROOT_URL
value: http://chart-example.local/grafana/
ports:
- name: http
containerPort: 3000
protocol: TCP
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
问题
现在准备就绪探测器无法通过
准备就绪探测失败:Get"grafana/login":10次重定向后停止后退重新启动失败的容器
我不太明白为什么。我试图改变livenessProbe
和readinessProbe
的路径,但没有太多说服力:从吊舱的角度来看,路线是相同的。例如,使用此配置,我可以直接访问
http://${pods_ip}:3000/login
为什么它会影响探测器?
将以下内容添加到grafana.iniconfigMap
解决了探测问题
[server]
serve_from_sub_path = true