imfreedom/k8s-cluster

Add the manifest for youtrack

2019-11-17, Gary Kramlich
190e9257dad3
Parents 1a766dc1984c
Children cb90f35605e5
Add the manifest for youtrack
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/50-issues.imfreedom.org.yaml Sun Nov 17 03:15:32 2019 -0600
@@ -0,0 +1,172 @@
+# youtrack is an issue tracker from jetbrains. It supports multiple projects,
+# integrates into hub, and supports importing from multiple issue trackers.
+---
+apiVersion: extensions/v1beta1
+kind: Ingress
+metadata:
+ namespace: imfreedom
+ name: issues
+ annotations:
+ certmanager.k8s.io/issuer: letsencrypt
+ nginx.ingress.kubernetes.io/proxy-body-size: 16m
+ nginx.ingress.kubernetes.io/configuration-snippet: |
+ more_set_headers "X-Frame-Options: SAMEORIGIN";
+ labels:
+ app: issues
+ role: app
+spec:
+ rules:
+ - host: issues.imfreedom.org
+ http:
+ paths:
+ - backend:
+ serviceName: issues
+ servicePort: 8080
+ path: /
+ tls:
+ - hosts:
+ - issues.imfreedom.org
+ secretName: issues-tls
+---
+apiVersion: certmanager.k8s.io/v1alpha1
+kind: Certificate
+metadata:
+ namespace: imfreedom
+ name: issues
+spec:
+ secretName: issues-tls
+ issuerRef:
+ name: letsencrypt
+ commonName: issues.imfreedom.org
+ dnsNames:
+ - issues.imfreedom.org
+ acme:
+ config:
+ - http01:
+ ingress: issues
+ domains:
+ - issues.imfreedom.org
+---
+apiVersion: v1
+kind: Service
+metadata:
+ namespace: imfreedom
+ labels:
+ app: issues
+ role: app
+ name: issues
+spec:
+ ports:
+ - port: 8080
+ protocol: TCP
+ selector:
+ app: issues
+ role: app
+---
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ namespace: imfreedom
+ name: issues
+ labels:
+ app: issues
+ role: app
+spec:
+ podSelector:
+ matchLabels:
+ app: issues
+ role: app
+ ingress:
+ - from:
+ - namespaceSelector:
+ matchLabels:
+ name: kube-public
+ podSelector:
+ matchLabels:
+ app: ingress
+ role: controller
+ ports:
+ - port: 8080
+ protocol: TCP
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ namespace: imfreedom
+ name: issues
+ labels:
+ app: issues
+ role: app
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: issues
+ role: app
+ strategy:
+ type: Recreate
+ template:
+ metadata:
+ labels:
+ app: issues
+ role: app
+ spec:
+ containers:
+ - name: youtrack
+ image: docker.io/jetbrains/youtrack:2019.2.59309
+ ports:
+ - containerPort: 8080
+ resources:
+ limits:
+ cpu: 1000m
+ memory: 2048Mi
+ requests:
+ cpu: 500m
+ memory: 1024Mi
+ volumeMounts:
+ - mountPath: /opt/youtrack/data
+ name: datadir
+ readOnly: false
+ subPath: data
+ - mountPath: /opt/youtrack/conf
+ name: datadir
+ readOnly: false
+ subPath: conf
+ - mountPath: /opt/youtrack/logs/
+ name: hostdir
+ readOnly: false
+ subPath: logs
+ - mountPath: /opt/youtrack/backups/
+ name: datadir
+ readOnly: false
+ subPath: backups
+ - mountPath: /opt/youtrack/temp/
+ name: hostdir
+ readOnly: false
+ subPath: temp
+ securityContext:
+ fsGroup: 13001
+ runAsUser: 13001
+ volumes:
+ - name: datadir
+ persistentVolumeClaim:
+ claimName: issues
+ - name: hostdir
+ emptyDir: {}
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ namespace: imfreedom
+ name: issues
+ labels:
+ app: issues
+ role: app
+spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 10Gi
+---
+