From 20af0dd38d2f3c5d19147e5825080ad2d24f5d32 Mon Sep 17 00:00:00 2001 From: dvirlabs Date: Thu, 3 Jul 2025 07:11:29 +0300 Subject: [PATCH] Fix Docker --- frontend/Dockerfile | 2 +- frontend/nginx.conf | 11 +++++ frontend/public/env.js.template | 5 ++ navix-helm/templates/backend-ingress.yaml | 23 --------- navix-helm/templates/env-configmap.yaml | 11 +++++ .../templates/frontend-env-configmap.yaml | 9 ---- navix-helm/templates/frontend-ingress.yaml | 27 ---------- navix-helm/templates/ingress.yaml | 49 +++++++++++++++++++ navix-helm/values.yaml | 4 +- 9 files changed, 80 insertions(+), 61 deletions(-) create mode 100644 frontend/nginx.conf create mode 100644 frontend/public/env.js.template delete mode 100644 navix-helm/templates/backend-ingress.yaml create mode 100644 navix-helm/templates/env-configmap.yaml delete mode 100644 navix-helm/templates/frontend-env-configmap.yaml delete mode 100644 navix-helm/templates/frontend-ingress.yaml create mode 100644 navix-helm/templates/ingress.yaml diff --git a/frontend/Dockerfile b/frontend/Dockerfile index 9f5a53f..05b544b 100644 --- a/frontend/Dockerfile +++ b/frontend/Dockerfile @@ -3,7 +3,7 @@ FROM node:20 AS builder WORKDIR /app COPY . . -RUN npm install +RUN npm install --legacy-peer-deps RUN npm run build # Stage 2: Serve with nginx diff --git a/frontend/nginx.conf b/frontend/nginx.conf new file mode 100644 index 0000000..79fd959 --- /dev/null +++ b/frontend/nginx.conf @@ -0,0 +1,11 @@ +server { + listen 80; + server_name _; + + root /usr/share/nginx/html; + index index.html; + + location / { + try_files $uri $uri/ /index.html; + } +} diff --git a/frontend/public/env.js.template b/frontend/public/env.js.template new file mode 100644 index 0000000..299dcc9 --- /dev/null +++ b/frontend/public/env.js.template @@ -0,0 +1,5 @@ +window.ENV = { + API_BASE: "${API_BASE}", + MINIO_ENDPOINT: "${MINIO_ENDPOINT}", + MINIO_BUCKET: "${MINIO_BUCKET}" +}; diff --git a/navix-helm/templates/backend-ingress.yaml b/navix-helm/templates/backend-ingress.yaml deleted file mode 100644 index 02fa268..0000000 --- a/navix-helm/templates/backend-ingress.yaml +++ /dev/null @@ -1,23 +0,0 @@ -{{- if .Values.backend.ingress.enabled }} -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: navix-backend - annotations: - {{- range $key, $value := .Values.backend.ingress.annotations }} - {{ $key }}: {{ $value | quote }} - {{- end }} -spec: - ingressClassName: {{ .Values.backend.ingress.className }} - rules: - - host: {{ .Values.backend.ingress.hosts[0].host }} - http: - paths: - - path: /api - pathType: Prefix - backend: - service: - name: navix-backend - port: - number: {{ .Values.backend.service.port }} -{{- end }} diff --git a/navix-helm/templates/env-configmap.yaml b/navix-helm/templates/env-configmap.yaml new file mode 100644 index 0000000..afc939e --- /dev/null +++ b/navix-helm/templates/env-configmap.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: navix-frontend-env +data: + env.js: | + window.ENV = { + API_BASE: "{{ .Values.frontend.env.API_BASE }}", + MINIO_ENDPOINT: "{{ .Values.frontend.env.MINIO_ENDPOINT }}", + MINIO_BUCKET: "{{ .Values.frontend.env.MINIO_BUCKET }}" + }; diff --git a/navix-helm/templates/frontend-env-configmap.yaml b/navix-helm/templates/frontend-env-configmap.yaml deleted file mode 100644 index a4faaf6..0000000 --- a/navix-helm/templates/frontend-env-configmap.yaml +++ /dev/null @@ -1,9 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: navix-frontend-env -data: - env.js: | - window.env = { - VITE_API_URL: "{{ .Values.frontend.env.VITE_API_URL }}" - }; diff --git a/navix-helm/templates/frontend-ingress.yaml b/navix-helm/templates/frontend-ingress.yaml deleted file mode 100644 index b1d61d4..0000000 --- a/navix-helm/templates/frontend-ingress.yaml +++ /dev/null @@ -1,27 +0,0 @@ -{{- if .Values.frontend.ingress.enabled }} -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: navix-frontend - annotations: - {{- range $key, $value := .Values.frontend.ingress.annotations }} - {{ $key }}: {{ $value | quote }} - {{- end }} -spec: - ingressClassName: {{ .Values.frontend.ingress.className }} - rules: - {{- range .Values.frontend.ingress.hosts }} - - host: {{ .host }} - http: - paths: - {{- range .paths }} - - path: {{ .path }} - pathType: {{ .pathType }} - backend: - service: - name: navix-frontend - port: - number: {{ $.Values.frontend.service.port }} - {{- end }} - {{- end }} -{{- end }} diff --git a/navix-helm/templates/ingress.yaml b/navix-helm/templates/ingress.yaml new file mode 100644 index 0000000..6f721aa --- /dev/null +++ b/navix-helm/templates/ingress.yaml @@ -0,0 +1,49 @@ +{{- if .Values.frontend.ingress.enabled }} +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: navix-frontend + annotations: + {{- range $key, $value := .Values.frontend.ingress.annotations }} + {{ $key }}: {{ $value | quote }} + {{- end }} +spec: + ingressClassName: {{ .Values.frontend.ingress.className }} + rules: + - host: {{ .Values.frontend.ingress.hosts[0].host }} + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: navix-frontend + port: + number: {{ .Values.frontend.service.port }} +{{- end }} + +--- + +{{- if .Values.backend.ingress.enabled }} +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: navix-backend + annotations: + {{- range $key, $value := .Values.backend.ingress.annotations }} + {{ $key }}: {{ $value | quote }} + {{- end }} +spec: + ingressClassName: {{ .Values.backend.ingress.className }} + rules: + - host: {{ .Values.backend.ingress.hosts[0].host }} + http: + paths: + - path: /api + pathType: Prefix + backend: + service: + name: navix-backend + port: + number: {{ .Values.backend.service.port }} +{{- end }} \ No newline at end of file diff --git a/navix-helm/values.yaml b/navix-helm/values.yaml index f97bd25..0e67780 100644 --- a/navix-helm/values.yaml +++ b/navix-helm/values.yaml @@ -18,7 +18,9 @@ frontend: - path: / pathType: Prefix env: - VITE_API_URL: "/api" + API_BASE: "https://navix.dvirlabs.com/api" + MINIO_ENDPOINT: "s3.dvirlabs.com" + MINIO_BUCKET: "navix-icons" backend: image: