gogs.yaml 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. ---
  2. kind: Deployment
  3. apiVersion: apps/v1
  4. metadata:
  5. name: gogs
  6. labels:
  7. app: gogs
  8. spec:
  9. replicas: 1
  10. selector:
  11. matchLabels:
  12. app: gogs
  13. template:
  14. metadata:
  15. labels:
  16. app: gogs
  17. spec:
  18. containers:
  19. - name: gogs
  20. image: gogs/gogs
  21. env:
  22. - name: PUID
  23. value: "1000"
  24. - name: PGID
  25. value: "1000"
  26. ports:
  27. - name: web
  28. containerPort: 3000
  29. volumeMounts:
  30. - name: gogs-data-volume
  31. mountPath: "/data"
  32. volumes:
  33. - name: gogs-data-volume
  34. persistentVolumeClaim:
  35. claimName: gogs-data-pvc
  36. ---
  37. apiVersion: v1
  38. kind: Service
  39. metadata:
  40. name: gogs
  41. spec:
  42. type: ClusterIP
  43. ports:
  44. - name: web
  45. port: 3000
  46. selector:
  47. app: gogs
  48. ---
  49. apiVersion: traefik.containo.us/v1alpha1
  50. kind: IngressRoute
  51. metadata:
  52. name: gogs-ingress-route
  53. namespace: default
  54. spec:
  55. entryPoints:
  56. - web
  57. routes:
  58. - match: Host(`gogs.dezendorf.net`)
  59. kind: Rule
  60. middlewares:
  61. - name: redirecthttps
  62. services:
  63. - name: gogs
  64. port: 3000
  65. ---
  66. apiVersion: traefik.containo.us/v1alpha1
  67. kind: IngressRoute
  68. metadata:
  69. name: gogs-websecure-route
  70. namespace: default
  71. spec:
  72. entryPoints:
  73. - websecure
  74. routes:
  75. - match: Host(`gogs.dezendorf.net`)
  76. kind: Rule
  77. services:
  78. - name: gogs
  79. port: 3000
  80. tls:
  81. certResolver: myresolver
  82. ---
  83. apiVersion: v1
  84. kind: PersistentVolumeClaim
  85. metadata:
  86. name: gogs-data-pvc
  87. spec:
  88. accessModes:
  89. - ReadWriteOnce
  90. storageClassName: longhorn
  91. resources:
  92. requests:
  93. storage: 500M