Files
go-persist/deployment/persist.yaml
matst80 42c1a8203c
All checks were successful
Build and Publish / BuildAndDeploy (push) Successful in 39s
no listing without apikey
2025-05-15 19:53:10 +02:00

116 lines
2.9 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: persist
arch: arm64
name: persist-arm64
spec:
replicas: 1
selector:
matchLabels:
app: persist
arch: arm64
template:
metadata:
labels:
app: persist
arch: arm64
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: NotIn
values:
- masterpi
- key: kubernetes.io/arch
operator: In
values:
- arm64
volumes:
- name: data
nfs:
path: /i-data/7a8af061/nfs/persist
server: 10.10.1.10
imagePullSecrets:
- name: regcred
containers:
- image: registry.knatofs.se/go-persist:latest
name: persist-arm64
imagePullPolicy: Always
lifecycle:
preStop:
exec:
command: ["sleep", "15"]
ports:
- containerPort: 8080
name: web
volumeMounts:
- mountPath: "/data"
name: data
resources:
limits:
memory: "768Mi"
requests:
memory: "70Mi"
cpu: "1200m"
env:
- name: TZ
value: "Europe/Stockholm"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: AMQP_URL
value: "amqp://admin:12bananer@rabbitmq:5672/"
- name: API_KEY
value: "ApiKey: randomslask2000"
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
---
kind: Service
apiVersion: v1
metadata:
name: persist
annotations:
prometheus.io/port: "8080"
spec:
selector:
app: persist
ports:
- name: web
port: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: persist-ingress
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
# nginx.ingress.kubernetes.io/affinity: "cookie"
# nginx.ingress.kubernetes.io/session-cookie-name: "cart-affinity"
# nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
# nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
nginx.ingress.kubernetes.io/proxy-body-size: 4m
spec:
ingressClassName: nginx
tls:
- hosts:
- storage.tornberg.me
secretName: persist-tls-secret
rules:
- host: storage.tornberg.me
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: persist
port:
number: 8080