gogs-deployment.yaml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. apiVersion: v1
  2. kind: ConfigMap
  3. metadata:
  4. name: gogs-config
  5. namespace: nginx-app
  6. data:
  7. app.ini: |
  8. [server]
  9. HTTP_ADDR = 0.0.0.0
  10. HTTP_PORT = 3000
  11. ROOT_URL = http://gogs2.9981.tech/
  12. DOMAIN = gogs2.9981.tech
  13. [database]
  14. DB_TYPE = sqlite3
  15. PATH = /data/gogs.db
  16. [repository]
  17. ROOT = /data/git/gogs-repo
  18. ---
  19. apiVersion: apps/v1
  20. kind: Deployment
  21. metadata:
  22. name: gogs
  23. namespace: nginx-app
  24. labels:
  25. app: gogs
  26. spec:
  27. replicas: 1
  28. selector:
  29. matchLabels:
  30. app: gogs
  31. template:
  32. metadata:
  33. labels:
  34. app: gogs
  35. spec:
  36. containers:
  37. - name: gogs
  38. image: registry.cn-hangzhou.aliyuncs.com/zhongpengqun/wanderer:linux-amd64-gogs-0.13
  39. command: ["/app/gogs/gogs"] # <-- 直接启动 gogs,跳过 socat
  40. args: ["web"]
  41. ports:
  42. - containerPort: 3000
  43. env:
  44. - name: GOGS_SERVER_HTTP_ADDR
  45. value: "0.0.0.0"
  46. - name: GOGS_SERVER_HTTP_PORT
  47. value: "3000"
  48. - name: GOGS_SERVER_ROOT_URL
  49. value: "http://gogs2.9981.tech/"
  50. - name: GOGS_SERVER_DOMAIN
  51. value: "gogs2.9981.tech"
  52. volumeMounts:
  53. - name: gogs-data
  54. mountPath: /data
  55. resources:
  56. requests:
  57. memory: "256Mi"
  58. cpu: "250m"
  59. limits:
  60. memory: "512Mi"
  61. cpu: "1000m"
  62. volumes:
  63. - name: gogs-data
  64. persistentVolumeClaim:
  65. claimName: gogs-pvc
  66. ---
  67. apiVersion: v1
  68. kind: Service
  69. metadata:
  70. name: gogs-service
  71. namespace: nginx-app
  72. spec:
  73. selector:
  74. app: gogs
  75. ports:
  76. - name: http
  77. port: 3000
  78. targetPort: 3000
  79. type: ClusterIP
  80. ---
  81. apiVersion: v1
  82. kind: PersistentVolumeClaim
  83. metadata:
  84. name: gogs-pvc
  85. namespace: nginx-app
  86. spec:
  87. accessModes:
  88. - ReadWriteOnce
  89. resources:
  90. requests:
  91. storage: 5Gi
  92. ---
  93. apiVersion: networking.k8s.io/v1
  94. kind: Ingress
  95. metadata:
  96. name: gogs-ingress
  97. namespace: nginx-app
  98. spec:
  99. ingressClassName: traefik
  100. rules:
  101. - host: gogs2.9981.tech
  102. http:
  103. paths:
  104. - path: /
  105. pathType: Prefix
  106. backend:
  107. service:
  108. name: gogs-service
  109. port:
  110. number: 3000