我有 yaml 檔案,用于在所有環境中部署我的應用程式。我只想為測驗環境添加一些 JVM 引數。無論如何我可以在 YAML 檔案中做到這一點嗎?
這是yaml
apiVersion: v1
kind: Pod
metadata:
name: rss-site
labels:
app: web
spec:
containers:
- name: front-end
image: nginx
ports:
- containerPort: 80
- name: rss-reader
image: nickchase/rss-php-nginx:v1
ports:
- containerPort: 88
env:
- name: JAVA_OPTS
value: "
-Dlog4j.configurationFile=log4j2.xml
-Denable.scan=true
"
在這里我想 -Denable.scan=true有條件并且應該只為測驗環境添加。
我嘗試了以下方式,但它不起作用并且 kubernete 拋出錯誤error converting YAML to JSON: yaml: line 53: did not find expected key
試過: -
apiVersion: v1
kind: Pod
metadata:
name: rss-site
labels:
app: web
spec:
containers:
- name: front-end
image: nginx
ports:
- containerPort: 80
- name: rss-reader
image: nickchase/rss-php-nginx:v1
ports:
- containerPort: 88
env:
- name: JAVA_OPTS
value: "
-Dlog4j.configurationFile=log4j2.xml
${{if eq "TEST" "TEST" }} # just sample condition , it will change
-Denable.scan=true
${{end }}
"
uj5u.com熱心網友回復:
helm會這樣做。實際上,語法幾乎與您輸入的相同,并且是這樣的:
env:
- name: JAVA_OPTS
value: "
-Dlog4j.configurationFile=log4j2.xml
{{- if eq .Values.profile "TEST" }}
-Denable.scan=true
{{- end }}
"
然后你通過安裝包(稱為圖表)宣告你想使用哪個組態檔(即你設定.Values.profile值)
您可以查看https://helm.sh/了解詳細資訊和示例
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/443029.html
標籤:Kubernetes
