turash/k8s/frontend-deployment.yaml
Damir Mukimov c60fd6a91f
Some checks failed
CI/CD Pipeline / backend-lint (push) Failing after 1m18s
CI/CD Pipeline / frontend-lint (push) Failing after 1m22s
CI/CD Pipeline / e2e-test (push) Has been skipped
CI/CD Pipeline / frontend-build (push) Has been skipped
CI/CD Pipeline / backend-build (push) Has been skipped
Configure k8s manifests for Argo CD deployment
- Add namespace.yaml for turash namespace
- Add frontend manifests (deployment, service, HPA, ingress)
- Add kustomization.yaml for Argo CD kustomize support
- Update frontend Argo CD application with proper annotations
- Configure ingress with domain turash.bk.glpx.pro for Argo CD link display
- Use registry.bk.glpx.pro for container images
2025-12-24 22:52:02 +01:00

83 lines
1.9 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: turash-frontend
namespace: turash
labels:
app: turash-frontend
component: frontend
version: v1
spec:
replicas: 2
revisionHistoryLimit: 10
selector:
matchLabels:
app: turash-frontend
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
template:
metadata:
labels:
app: turash-frontend
component: frontend
version: v1
annotations:
prometheus.io/path: /health
prometheus.io/port: "80"
prometheus.io/scrape: "true"
spec:
containers:
- name: frontend
image: registry.bk.glpx.pro/turash/turash-frontend:latest
imagePullPolicy: Always
ports:
- name: http
containerPort: 80
protocol: TCP
env:
- name: VITE_API_BASE_URL
value: https://turash-api.bk.glpx.pro
- name: VITE_ENVIRONMENT
value: production
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 200m
memory: 256Mi
livenessProbe:
httpGet:
path: /health
port: http
scheme: HTTP
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 3
successThreshold: 1
readinessProbe:
httpGet:
path: /health
port: http
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 5
timeoutSeconds: 3
failureThreshold: 3
successThreshold: 1
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 101
restartPolicy: Always
terminationGracePeriodSeconds: 30