diff --git a/deployment/deployment.yaml b/deployment/deployment.yaml new file mode 100644 index 0000000..616b587 --- /dev/null +++ b/deployment/deployment.yaml @@ -0,0 +1,37 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nav-backend +spec: + replicas: 3 + selector: + matchLabels: + app: nav-backend + template: + metadata: + labels: + app: nav-backend + spec: + containers: + - name: worker + image: backend-image + ports: + - containerPort: 8000 + env: + - name: NUM_WORKERS + value: "3" + - name: OSM_CACHE_DIR + value: "/osm-cache" + volumeMounts: + - name: osm-cache + mountPath: /osm-cache + resources: + requests: + cpu: 100m + memory: 100Mi + limits: + cpu: 4 + memory: 8Gi + volumes: + - name: osm-cache + emptyDir: {} diff --git a/deployment/ingress.yaml b/deployment/ingress.yaml new file mode 100644 index 0000000..8fa3b41 --- /dev/null +++ b/deployment/ingress.yaml @@ -0,0 +1,15 @@ +kind: IngressRoute +apiVersion: traefik.io/v1alpha1 +metadata: + name: nav-ingress +spec: + entryPoints: + - websecure + routes: + - match: Host(`nav.kluster.moll.re`) + kind: Rule + services: + - name: nav-service + port: 8000 + tls: + certResolver: default-tls diff --git a/deployment/kustomization.yaml b/deployment/kustomization.yaml index e69de29..28040ec 100644 --- a/deployment/kustomization.yaml +++ b/deployment/kustomization.yaml @@ -0,0 +1,15 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + + +namespace: nav +resources: + - namespace.yaml + - deployment.yaml + - service.yaml + - ingress.yaml + +images: + - name: backend-image + newName: git.kluster.moll.re/remoll/fast_network_navigation/backend + newTag: latest \ No newline at end of file diff --git a/deployment/namespace.yaml b/deployment/namespace.yaml new file mode 100644 index 0000000..0a074bd --- /dev/null +++ b/deployment/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: placeholder diff --git a/deployment/pvc.yaml b/deployment/pvc.yaml new file mode 100644 index 0000000..15897ec --- /dev/null +++ b/deployment/pvc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: cache +spec: + storageClassName: "nfs-client" + accessModes: + - ReadWriteOnce + resources: + requests: + storage: "5Gi" diff --git a/deployment/service.yaml b/deployment/service.yaml new file mode 100644 index 0000000..c4e5de3 --- /dev/null +++ b/deployment/service.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: nav-service +spec: + selector: + app: nav-backend + ports: + - protocol: TCP + port: 8000 + targetPort: 8000