| apiVersion: v1 |
| kind: ConfigMap |
| metadata: |
| name: {{ .Values.name }} |
| namespace: {{ .Release.Namespace }} |
| data: |
| nginx.conf: | |
| {{ toYaml .Values.config | nindent 4 }} |
| --- |
| apiVersion: apps/v1 |
| kind: Deployment |
| metadata: |
| name: {{ .Values.name }} |
| namespace: {{ .Release.Namespace }} |
| spec: |
| selector: |
| matchLabels: |
| app: proxy |
| replicas: 1 |
| template: |
| metadata: |
| labels: |
| app: proxy |
| spec: |
| containers: |
| - name: proxy |
| image: {{ .Values.image.repository }}:{{ .Values.image.tag }} |
| imagePullPolicy: {{ .Values.image.pullPolicy }} |
| ports: |
| {{- range .Values.ports }} |
| - name: {{ .name }} |
| containerPort: {{ .value }} |
| protocol: {{ .protocol }} |
| {{- end }} |
| volumeMounts: |
| - name: config |
| mountPath: /etc/nginx |
| volumes: |
| - name: config |
| configMap: |
| name: {{ .Values.name }} |
| --- |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| name: {{ .Values.name }} |
| namespace: {{ .Release.Namespace }} |
| spec: |
| type: ClusterIP |
| selector: |
| app: proxy |
| ports: |
| {{- range .Values.ports }} |
| - name: {{ .name }} |
| port: {{ .value }} |
| targetPort: {{ .name }} |
| protocol: {{ .protocol }} |
| {{- end }} |