The karrot-frontend nginx template hardcodes Docker's DNS resolver (127.0.0.11) which doesn't exist in Kubernetes. Added a ConfigMap to override the template, removing the Docker DNS resolver by using a direct proxy_pass with no nginx variable (which would force runtime resolution). Also adds a README with usage instructions. Documents lessons learned in ADDING-APPS-NOTES.md: - Note 24: nginx Docker DNS resolver doesn't work in Kubernetes; any nginx variable in proxy_pass (including $request_uri) forces runtime DNS resolution requiring a resolver directive - Note 25: ConfigMap changes don't restart pods; subPath mounts never auto-update; always follow with kubectl rollout restart - Note 26: includeSelectors mismatch affects every deployment in an app — check all endpoints, not just the web-facing one Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
21 lines
439 B
YAML
21 lines
439 B
YAML
apiVersion: kustomize.config.k8s.io/v1beta1
|
|
kind: Kustomization
|
|
namespace: {{ .namespace }}
|
|
labels:
|
|
- includeSelectors: true
|
|
pairs:
|
|
app: karrot
|
|
managedBy: kustomize
|
|
partOf: wild-cloud
|
|
resources:
|
|
- namespace.yaml
|
|
- nginx-template-configmap.yaml
|
|
- db-init-job.yaml
|
|
- deployment-backend.yaml
|
|
- deployment-frontend.yaml
|
|
- deployment-worker.yaml
|
|
- redis.yaml
|
|
- service.yaml
|
|
- ingress.yaml
|
|
- pvc.yaml
|