Korištenje postojećeg Secret-a za proxy varijable u Helm grafikonu
Referencirajte potpune proxy URL-ove iz Secret-a u Helm 3 Deployment predlošku umjesto da pretpostavljate da shell varijabla postaje okruženje kontejnera.
Pretpostavimo da namespace izdanja već ima Secret nazvan app-outbound-proxy. Njegovi ključevi http_proxy i https_proxy sadrže potpune proxy URL-ove potrebne aplikaciji.
Helm 3 grafikon može u values.yaml čuvati samo naziv tog Secret-a:
outboundProxy:
existingSecret: app-outbound-proxy
U Deployment predlošku predviđenog kontejnera referencirajte ključeve:
env:
- name: HTTP_PROXY
valueFrom:
secretKeyRef:
name: {{ .Values.outboundProxy.existingSecret | quote }}
key: http_proxy
- name: HTTPS_PROXY
valueFrom:
secretKeyRef:
name: {{ .Values.outboundProxy.existingSecret | quote }}
key: https_proxy
Ovo je ulomak specifikacije kontejnera. Secret mora postojati u namespace-u Pod-a i sadržavati oba referencirana ključa. Njegove vrijednosti trebaju koristiti protokol, host i port stvarnog proxy poslužitelja. Za javne zahtjeve aplikacije kojima je dopušteno koristiti javni proxy bez provjere identiteta, gradite te URL-ove iz odgovarajućeg kandidata na popisu besplatnih proxyja; zadržite sve potrebne izravne iznimke.
Vrijednost grafikona daje naziv; secretKeyRef daje vrijednosti okruženja kontejnera. Samo export HTTP_PROXY u shellu koji pokreće helm ne dodaje ovaj env odjeljak u Pod predložak.
Promjena Secret-a također je promjena životnog ciklusa
Kontejner ne osvježava svoje okruženje kada se podaci Secret-a promijene. Organizirajte predviđeni restart ili rollout tako da novo pokrenuti kontejneri dobiju ažurirane vrijednosti. Promjena podataka pod istim nazivom Secret-a sama po sebi ne uređuje Pod predložak Deployment-a.
Aplikacija mora podržavati odabrane proxy varijable okruženja. Pristup Helm repozitoriju i povlačenje slike na čvoru odvojeni su potrošači koji rade prije nego što ovo okruženje kontejnera može pomoći.