apiVersion: apps/v1 kind: Deployment metadata: name: visual-studio-code spec: selector: matchLabels: app: visual-studio-code template: metadata: labels: app: visual-studio-code spec: containers: - name: visual-studio-code image: ghcr.io/coder/code-server:4.141.0 imagePullPolicy: IfNotPresent args: [--auth, none] ports: - name: http containerPort: 8080 startupProbe: httpGet: path: /healthz port: http failureThreshold: 30 periodSeconds: 2 readinessProbe: httpGet: path: /healthz port: http periodSeconds: 10 livenessProbe: httpGet: path: /healthz port: http periodSeconds: 30 volumeMounts: - name: brgkepler-com mountPath: /home/coder/brgkepler-com - name: brunner-ninja mountPath: /home/coder/brunner-ninja - name: gschissenes-equipment mountPath: /home/coder/gschissenes-equipment - name: immich-crack mountPath: /home/coder/immich-crack - name: pfostendynamics-com mountPath: /home/coder/pfostendynamics-com - name: watschn-studio mountPath: /home/coder/watschn-studio volumes: - name: brgkepler-com persistentVolumeClaim: claimName: brgkepler-com - name: brunner-ninja persistentVolumeClaim: claimName: brunner-ninja - name: gschissenes-equipment persistentVolumeClaim: claimName: gschissenes-equipment - name: immich-crack persistentVolumeClaim: claimName: immich-crack - name: pfostendynamics-com persistentVolumeClaim: claimName: pfostendynamics-com - name: watschn-studio persistentVolumeClaim: claimName: watschn-studio imagePullSecrets: - name: quay-pull-secret --- apiVersion: v1 kind: Service metadata: name: visual-studio-code spec: ports: - name: http port: 80 protocol: TCP targetPort: 8080 selector: app: visual-studio-code --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: visual-studio-code annotations: traefik.ingress.kubernetes.io/router.entrypoints: websecure traefik.ingress.kubernetes.io/router.middlewares: default-authentik@kubernetescrd spec: ingressClassName: traefik rules: - host: dev.brunner.ninja http: paths: - path: / pathType: Prefix backend: service: name: visual-studio-code port: name: http