golinks.yaml 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. ---
  2. kind: Deployment
  3. apiVersion: apps/v1
  4. metadata:
  5. name: golink
  6. labels:
  7. app: golink
  8. spec:
  9. replicas: 1
  10. selector:
  11. matchLabels:
  12. app: golink
  13. template:
  14. metadata:
  15. labels:
  16. app: golink
  17. spec:
  18. containers:
  19. - name: golink
  20. image: docker.dezendorf.net/golink
  21. ports:
  22. - name: web
  23. containerPort: 80
  24. volumeMounts:
  25. - name: golinks-volume
  26. mountPath: /gradle/app/database
  27. volumes:
  28. - name: golinks-volume
  29. persistentVolumeClaim:
  30. claimName: golinks-pvc
  31. ---
  32. apiVersion: v1
  33. kind: Service
  34. metadata:
  35. name: golink
  36. spec:
  37. type: ClusterIP
  38. ports:
  39. - name: web
  40. port: 80
  41. targetPort: 80
  42. selector:
  43. app: golink
  44. ---
  45. apiVersion: v1
  46. kind: PersistentVolumeClaim
  47. metadata:
  48. name: golinks-pvc
  49. spec:
  50. accessModes:
  51. - ReadWriteOnce
  52. storageClassName: longhorn
  53. resources:
  54. requests:
  55. storage: 2Gi
  56. ---
  57. apiVersion: traefik.containo.us/v1alpha1
  58. kind: IngressRoute
  59. metadata:
  60. name: golink-ingress-route
  61. namespace: default
  62. spec:
  63. entryPoints:
  64. - web
  65. routes:
  66. - match: ((Host(`gogo`)||Host(`gogo.dezendorf.net`)||Host(`gogo`)||Host(`gogor.dezendorf.net`))) && PathPrefix(`/_`)
  67. kind: Rule
  68. priority: 20
  69. middlewares:
  70. - name: httpsgofqdn
  71. services:
  72. - name: golink
  73. port: 80
  74. - match: (Host(`gogo.dezendorf.net`)||Host(`gogor.dezendorf.net`))||Host(`gogo`)
  75. priority: 10
  76. kind: Rule
  77. services:
  78. - name: golink
  79. port: 80
  80. ---
  81. apiVersion: traefik.containo.us/v1alpha1
  82. kind: IngressRoute
  83. metadata:
  84. name: golink-websecure-route
  85. namespace: default
  86. spec:
  87. entryPoints:
  88. - websecure
  89. routes:
  90. - match: (Host(`gogo.dezendorf.net`)||Host(`gogor.dezendorf.net`))
  91. kind: Rule
  92. middlewares:
  93. - name: authelia
  94. services:
  95. - name: golink
  96. port: 80
  97. tls:
  98. certResolver: myresolver
  99. ---
  100. apiVersion: traefik.containo.us/v1alpha1
  101. kind: Middleware
  102. metadata:
  103. name: httpsgofqdn
  104. spec:
  105. redirectRegex:
  106. regex: "^http(s)?://(gogo(.dezendorf.net)?)/_(.*)$"
  107. replacement: "https://gogo.dezendorf.net/_${4}"