apiVersion: v1 kind: Service metadata: name: theia spec: ports: - protocol: TCP name: web port: 3000 selector: app: theia --- apiVersion: apps/v1 kind: Deployment metadata: name: theia labels: app: theia spec: replicas: 1 selector: matchLabels: app: theia template: metadata: labels: app: theia spec: containers: - name: theia image: bv11-cr01.bessems.eu/proxy/theiaide/theia-full ports: - name: web containerPort: 3000 volumeMounts: - mountPath: /home/project/websites name: flexvolsmb-theia-websites - mountPath: /home/project name: flexvolsmb-theia-workspace volumes: - name: flexvolsmb-theia-websites persistentVolumeClaim: claimName: flexvolsmb-theia-websites - name: flexvolsmb-theia-workspace persistentVolumeClaim: claimName: flexvolsmb-theia-workspace securityContext: runAsUser: 1000 runAsGroup: 1000 fsGroup: 1000 --- apiVersion: traefik.containo.us/v1alpha1 kind: IngressRoute metadata: name: theia spec: entryPoints: - websecure routes: - match: Host(`ide.spamasaurus.com`) kind: Rule services: - name: theia port: 3000 middlewares: - name: security-headers@file - name: 2fa-authentication@file - name: compression@file --- apiVersion: v1 kind: PersistentVolume metadata: name: flexvolsmb-theia-websites spec: capacity: storage: 1Gi accessModes: - ReadWriteMany storageClassName: flexvolsmb-theia-websites flexVolume: driver: mount/smb secretRef: name: smb-secret options: # opts: domain=bessems.eu,file_mode=0777,dir_mode=0777,iocharset=utf8,nobrl opts: domain=bessems.eu,file_mode=0777,dir_mode=0777,iocharset=utf8 server: 192.168.11.225 share: /K3s.Volumes/lighttpd/websites --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: flexvolsmb-theia-websites namespace: default spec: accessModes: - ReadWriteMany storageClassName: flexvolsmb-theia-websites resources: requests: storage: 1Gi --- apiVersion: v1 kind: PersistentVolume metadata: name: flexvolsmb-theia-workspace spec: capacity: storage: 1Gi accessModes: - ReadWriteMany storageClassName: flexvolsmb-theia-workspace flexVolume: driver: mount/smb secretRef: name: smb-secret options: opts: domain=bessems.eu,file_mode=0777,dir_mode=0777,iocharset=utf8 server: 192.168.11.225 share: /K3s.Volumes/theia/workspace --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: flexvolsmb-theia-workspace namespace: default spec: accessModes: - ReadWriteMany storageClassName: flexvolsmb-theia-workspace resources: requests: storage: 1Gi