blob: 53125f5b259bb2c923b5bcc7d545155c8c63a5b0 [file] [log] [blame]
DTabidze09935812024-03-13 13:47:39 +04001apiVersion: v1
2kind: Service
3metadata:
4 name: url-shortener
5 namespace: {{ .Release.Namespace }}
6spec:
7 type: ClusterIP
8 selector:
9 app: url-shortener
10 ports:
11 - name: http
12 protocol: TCP
13 port: 80
14 targetPort: {{ .Values.port }}
15---
16apiVersion: networking.k8s.io/v1
17kind: Ingress
18metadata:
19 name: ingress
20 namespace: {{ .Release.Namespace }}
21{{- if .Values.certificateIssuer }}
22 annotations:
23 acme.cert-manager.io/http01-edit-in-place: "true"
24 cert-manager.io/cluster-issuer: {{ .Values.certificateIssuer }}
25{{- end }}
26spec:
27 ingressClassName: {{ .Values.ingressClassName }}
28{{- if .Values.certificateIssuer }}
29 tls:
30 - hosts:
31 - {{ .Values.domain }}
32 secretName: cert-url-shortener
33{{- end }}
34 rules:
35 - host: {{ .Values.domain }}
36 http:
37 paths:
38 - path: /
39 pathType: Prefix
40 backend:
41 service:
42 name: url-shortener
43 port:
44 name: http
45---
46apiVersion: apps/v1
47kind: Deployment
48metadata:
49 name: url-shortener
50 namespace: {{ .Release.Namespace }}
51spec:
52 replicas: 1
53 selector:
54 matchLabels:
55 app: url-shortener
56 template:
57 metadata:
58 labels:
59 app: url-shortener
60 spec:
61 containers:
62 - name: url-shortener
63 image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
64 ports:
65 - name: http
66 containerPort: {{ .Values.port }}
67 protocol: TCP
68 command:
69 - url-shortener
70 - --port={{ .Values.port }}
71 - --db-path="/data/urls.db"
72 volumeMounts:
73 - name: url-shortener
74 mountPath: /data
75 volumes:
76 - name: url-shortener
77 persistentVolumeClaim:
78 claimName: url-shortener