From 9a3f4bac60d06149cc990980aae83a9add348bf6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beatrice=20Dellac=C3=A0?= Date: Sat, 5 Apr 2025 23:45:57 +0200 Subject: [PATCH] add nexus oss --- deploy/sonatype-nexus/kustomization.yaml | 10 ++++++++ deploy/sonatype-nexus/nexus-deploy.yaml | 29 ++++++++++++++++++++++++ deploy/sonatype-nexus/nexus-ingress.yaml | 24 ++++++++++++++++++++ deploy/sonatype-nexus/nexus-pvc.yaml | 11 +++++++++ deploy/sonatype-nexus/nexus-svc.yaml | 18 +++++++++++++++ 5 files changed, 92 insertions(+) create mode 100644 deploy/sonatype-nexus/kustomization.yaml create mode 100644 deploy/sonatype-nexus/nexus-deploy.yaml create mode 100644 deploy/sonatype-nexus/nexus-ingress.yaml create mode 100644 deploy/sonatype-nexus/nexus-pvc.yaml create mode 100644 deploy/sonatype-nexus/nexus-svc.yaml diff --git a/deploy/sonatype-nexus/kustomization.yaml b/deploy/sonatype-nexus/kustomization.yaml new file mode 100644 index 0000000..d43ae76 --- /dev/null +++ b/deploy/sonatype-nexus/kustomization.yaml @@ -0,0 +1,10 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +namespace: sonatype-nexus + +resources: + - nexus-deploy.yaml + - nexus-pvc.yaml + - nexus-svc.yaml + - nexus-ingress.yaml diff --git a/deploy/sonatype-nexus/nexus-deploy.yaml b/deploy/sonatype-nexus/nexus-deploy.yaml new file mode 100644 index 0000000..dbd9e93 --- /dev/null +++ b/deploy/sonatype-nexus/nexus-deploy.yaml @@ -0,0 +1,29 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: +name: sonatype-nexus +labels: + app: sonatype-nexus +spec: +replicas: 1 +selector: + matchLabels: + app: sonatype-nexus +template: + metadata: + labels: + app: sonatype-nexus + spec: + containers: + - image: sonatype/nexus3 + name: nexus + ports: + - containerPort: 8081 + volumes: + - name: nexus-vol + persistentVolumeClaim: + claimName: sonatype-nexus-data + volumeMounts: + - name: nexus-vol + mountPath: /nexus-data + subPath: sonatype \ No newline at end of file diff --git a/deploy/sonatype-nexus/nexus-ingress.yaml b/deploy/sonatype-nexus/nexus-ingress.yaml new file mode 100644 index 0000000..1d933f1 --- /dev/null +++ b/deploy/sonatype-nexus/nexus-ingress.yaml @@ -0,0 +1,24 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: sonatype-nexus + annotations: + cert-manager.io/cluster-issuer: "letsencrypt-prod" + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" +spec: + ingressClassName: nginx + tls: + - hosts: + - nexus.prod.panic.haus + secretName: keycloak-tls + rules: + - host: nexus.prod.panic.haus + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: sonatype-nexus + port: + number: 8081 diff --git a/deploy/sonatype-nexus/nexus-pvc.yaml b/deploy/sonatype-nexus/nexus-pvc.yaml new file mode 100644 index 0000000..c3c6f86 --- /dev/null +++ b/deploy/sonatype-nexus/nexus-pvc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: sonatype-nexus-data +spec: + storageClassName: longhorn + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi \ No newline at end of file diff --git a/deploy/sonatype-nexus/nexus-svc.yaml b/deploy/sonatype-nexus/nexus-svc.yaml new file mode 100644 index 0000000..a72245f --- /dev/null +++ b/deploy/sonatype-nexus/nexus-svc.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + prometheus.io/scrape: 'true' + prometheus.io/path: / + prometheus.io/port: '8081' +name: sonatype-service +spec: +ports: + - name: sonatype-nexus + port: 8081 + protocol: TCP + targetPort: 8081 + nodePort: 8081 +selector: + app: sonatype-nexus +type: ClusterIP \ No newline at end of file