k8s deployment (#5046)
This commit is contained in:
		
							parent
							
								
									b8451190d8
								
							
						
					
					
						commit
						8b4c4bd08f
					
				
					 1 changed files with 107 additions and 0 deletions
				
			
		
							
								
								
									
										107
									
								
								contrib/k8s/gitea.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										107
									
								
								contrib/k8s/gitea.yml
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,107 @@ | ||||||
|  | apiVersion: v1 | ||||||
|  | kind: Namespace | ||||||
|  | metadata: | ||||||
|  |   name: gitea | ||||||
|  | --- | ||||||
|  | apiVersion: apps/v1 | ||||||
|  | kind: Deployment | ||||||
|  | metadata: | ||||||
|  |   name: gitea | ||||||
|  |   namespace: gitea | ||||||
|  |   labels: | ||||||
|  |     app: gitea | ||||||
|  | spec: | ||||||
|  |   replicas: 1 | ||||||
|  |   template: | ||||||
|  |     metadata: | ||||||
|  |       name: gitea | ||||||
|  |       labels: | ||||||
|  |         app: gitea | ||||||
|  |     spec: | ||||||
|  |       containers: | ||||||
|  |       - name: gitea | ||||||
|  |         image: gitea/gitea:latest | ||||||
|  |         imagePullPolicy: Always | ||||||
|  |         volumeMounts: | ||||||
|  |           - mountPath: "/var/lib/gitea" | ||||||
|  |             name: "root" | ||||||
|  |           - mountPath: "/data" | ||||||
|  |             name: "data" | ||||||
|  |         ports: | ||||||
|  |           - containerPort: 22 | ||||||
|  |             name: ssh | ||||||
|  |             protocol: TCP | ||||||
|  |           - containerPort: 3000 | ||||||
|  |             name: http | ||||||
|  |             protocol: TCP | ||||||
|  |       restartPolicy: Always | ||||||
|  |       volumes: | ||||||
|  |         # Set up a data directory for gitea | ||||||
|  |         # For production usage, you should consider using PV/PVC instead(or simply using storage like NAS) | ||||||
|  |         # For more details, please see https://kubernetes.io/docs/concepts/storage/volumes/ | ||||||
|  |       - name: "root" | ||||||
|  |         hostPath: | ||||||
|  |           # directory location on host | ||||||
|  |           path: "/var/lib/gitea" | ||||||
|  |           # this field is optional | ||||||
|  |           type: Directory | ||||||
|  |       - name: "data" | ||||||
|  |         hostPath: | ||||||
|  |           path: "/data/gitea" | ||||||
|  |           type: Directory | ||||||
|  |   selector: | ||||||
|  |     matchLabels: | ||||||
|  |       app: gitea | ||||||
|  | --- | ||||||
|  | # Using cluster mode | ||||||
|  | apiVersion: v1 | ||||||
|  | kind: Service | ||||||
|  | metadata: | ||||||
|  |   name: gitea-web | ||||||
|  |   namespace: gitea | ||||||
|  |   labels: | ||||||
|  |     app: gitea-web | ||||||
|  | spec: | ||||||
|  |   ports: | ||||||
|  |   - port: 80 | ||||||
|  |     targetPort: 3000 | ||||||
|  |     name: http | ||||||
|  |   selector: | ||||||
|  |     app: gitea | ||||||
|  | --- | ||||||
|  | # Using node-port mode | ||||||
|  | # This mainly open a specific TCP port for SSH usage on each host, | ||||||
|  | # so you can use a proxy layer to handle it(e.g. slb, nginx) | ||||||
|  | apiVersion: v1 | ||||||
|  | kind: Service | ||||||
|  | metadata: | ||||||
|  |   name: gitea-ssh | ||||||
|  |   namespace: gitea | ||||||
|  |   labels: | ||||||
|  |     app: gitea-ssh | ||||||
|  | spec: | ||||||
|  |   ports: | ||||||
|  |   - port: 22 | ||||||
|  |     targetPort: 22 | ||||||
|  |     nodePort: 30022 | ||||||
|  |     name: ssh | ||||||
|  |   selector: | ||||||
|  |     app: gitea | ||||||
|  |   type: NodePort | ||||||
|  | --- | ||||||
|  | # Ingress is always suitable for HTTP usage, | ||||||
|  | # we suggest using an proxy layer such as slb to send traffic to different ports. | ||||||
|  | # Usually 80/443 for web and 22 directly for SSH. | ||||||
|  | apiVersion: extensions/v1beta1 | ||||||
|  | kind: Ingress | ||||||
|  | metadata: | ||||||
|  |   name: gitea | ||||||
|  |   namespace: gitea | ||||||
|  | spec: | ||||||
|  |   rules: | ||||||
|  |   - host: your-gitea-host.com | ||||||
|  |     http: | ||||||
|  |       paths: | ||||||
|  |       - backend: | ||||||
|  |           serviceName: gitea-web | ||||||
|  |           servicePort: 80 | ||||||
		Loading…
	
		Reference in a new issue