codeserver.yaml 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. ---
  2. kind: Deployment
  3. apiVersion: apps/v1
  4. metadata:
  5. name: codeserver
  6. labels:
  7. app: codeserver
  8. spec:
  9. replicas: 1
  10. selector:
  11. matchLabels:
  12. app: codeserver
  13. template:
  14. metadata:
  15. labels:
  16. app: codeserver
  17. spec:
  18. containers:
  19. - name: codeserver
  20. image: docker.dezendorf.net/code-server:96bac41
  21. ports:
  22. - name: web
  23. containerPort: 8080
  24. volumeMounts:
  25. - name: code-data-volume
  26. mountPath: "/home/coder"
  27. volumes:
  28. - name: code-data-volume
  29. persistentVolumeClaim:
  30. claimName: code-data-pvc
  31. ---
  32. apiVersion: v1
  33. kind: PersistentVolumeClaim
  34. metadata:
  35. name: code-data-pvc
  36. spec:
  37. accessModes:
  38. - ReadWriteOnce
  39. storageClassName: nfs
  40. resources:
  41. requests:
  42. storage: 100M
  43. ---
  44. apiVersion: v1
  45. kind: Service
  46. metadata:
  47. name: codeserver
  48. spec:
  49. type: ClusterIP
  50. ports:
  51. - name: web
  52. port: 8080
  53. selector:
  54. app: codeserver
  55. ---
  56. apiVersion: v1
  57. kind: Service
  58. metadata:
  59. name: codeserver-devport
  60. spec:
  61. type: ClusterIP
  62. ports:
  63. - name: webdev
  64. port: 5000
  65. selector:
  66. app: codeserver
  67. ---
  68. apiVersion: traefik.containo.us/v1alpha1
  69. kind: IngressRoute
  70. metadata:
  71. name: codeserver-ingress-route
  72. namespace: default
  73. spec:
  74. entryPoints:
  75. - web
  76. routes:
  77. - match: Host(`codeserver.dezendorf.net`)
  78. kind: Rule
  79. middlewares:
  80. - name: redirecthttps
  81. services:
  82. - name: codeserver
  83. port: 8080
  84. ---
  85. apiVersion: traefik.containo.us/v1alpha1
  86. kind: IngressRoute
  87. metadata:
  88. name: codeserver-websecure-route
  89. namespace: default
  90. spec:
  91. entryPoints:
  92. - websecure
  93. routes:
  94. - match: Host(`codeserver.dezendorf.net`)
  95. kind: Rule
  96. middlewares:
  97. - name: authelia
  98. services:
  99. - name: codeserver
  100. port: 8080
  101. tls:
  102. certResolver: myresolver
  103. ---
  104. apiVersion: traefik.containo.us/v1alpha1
  105. kind: IngressRoute
  106. metadata:
  107. name: codeserver-devport-websecure-route
  108. namespace: default
  109. spec:
  110. entryPoints:
  111. - websecure
  112. routes:
  113. - match: Host(`devport.dezendorf.net`)
  114. kind: Rule
  115. middlewares:
  116. - name: authelia
  117. services:
  118. - name: codeserver-devport
  119. port: 5000
  120. tls:
  121. certResolver: myresolver