Kubernetes.K3s.installLog/services/Theia/deploy-Theia.yml

134 lines
2.8 KiB
YAML

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