# Deployment description apiVersion: apps/v1 kind: Deployment metadata: name: semapp-deployment namespace: qa-environment labels: app: semapp-qa spec: strategy: type: Recreate replicas: 1 selector: matchLabels: app: semapp-qa template: metadata: labels: app: semapp-qa spec: securityContext: runAsUser: 1000 runAsGroup: 1000 fsGroup: 1000 containers: - name: semapp image: packages.semapp.lan:5000/semapp-wagtail:V1.0.3 imagePullPolicy: Always resources: requests: memory: "128Mi" cpu: "100m" limits: memory: "256Mi" cpu: "4" ports: - containerPort: 8000 name: semapp-http protocol: TCP envFrom: - configMapRef: name: semapp-qa-config volumeMounts: - mountPath: semapp_wagtail/media/. name: semapp-pv-qa volumes: - name: semapp-pv-qa persistentVolumeClaim: claimName: semapp-pvc-qa --- apiVersion: v1 kind: ConfigMap metadata: namespace: qa-environment name: semapp-qa-config labels: app: semapp-qa data: DJANGO_DB_ENGINE: "django.db.backends.postgresql_psycopg2" DJANGO_DB_NAME: "semapp-wagtail-qa" DJANGO_DB_USER: "semapp-wagtail-qa" DJANGO_DB_PASSWORD: "semapp-wagtail-qa" DJANGO_DB_HOST: "dbpg11.semapp.lan" DJANGO_DB_PORT: "5432" --- # Persistent Volume Claim description apiVersion: v1 kind: PersistentVolumeClaim metadata: name: semapp-pvc-qa namespace: qa-environment labels: app: semapp-qa spec: storageClassName: longhorn accessModes: - ReadWriteOnce resources: requests: storage: 1Gi --- # semapp Service apiVersion: v1 kind: Service metadata: name: semapp namespace: qa-environment spec: selector: app: semapp-qa ports: - name: semapp-http port: 8000 targetPort: semapp-http type: NodePort --- # Ingress description apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: semapp-qa-ingress namespace: qa-environment annotations: kubernetes.io/ingress.class: "traefik" spec: rules: - host: semapp-qa.k3s.semapp.lan http: paths: - backend: service: name: semapp port: number: 8000 path: / pathType: ImplementationSpecific