# Gitea deployment. # Replace with your domain (e.g. git.example.com). # Replace with the same password used in postgresql.yaml. apiVersion: v1 kind: PersistentVolumeClaim metadata: name: gitea-data namespace: gitea spec: accessModes: - ReadWriteOnce storageClassName: local-path resources: requests: storage: 10Gi --- apiVersion: v1 kind: Service metadata: name: gitea-http namespace: gitea spec: type: ClusterIP ports: - port: 3000 targetPort: 3000 selector: app: gitea --- apiVersion: v1 kind: Service metadata: name: gitea-ssh namespace: gitea spec: type: ClusterIP ports: - port: 22 targetPort: 22 selector: app: gitea --- apiVersion: apps/v1 kind: Deployment metadata: name: gitea namespace: gitea spec: replicas: 1 selector: matchLabels: app: gitea template: metadata: labels: app: gitea spec: initContainers: - name: wait-for-db image: busybox:1.36 command: ['sh', '-c', 'until nc -z postgresql 5432; do sleep 2; done'] containers: - name: gitea image: gitea/gitea:1.23 ports: - containerPort: 3000 name: http - containerPort: 22 name: ssh env: - name: GITEA__database__DB_TYPE value: postgres - name: GITEA__database__HOST value: postgresql:5432 - name: GITEA__database__NAME value: gitea - name: GITEA__database__USER value: gitea - name: GITEA__database__PASSWD value: - name: GITEA__server__DOMAIN value: - name: GITEA__server__ROOT_URL value: https:/// volumeMounts: - name: data mountPath: /data resources: requests: memory: 256Mi cpu: 100m limits: memory: 1Gi cpu: 1000m volumes: - name: data persistentVolumeClaim: claimName: gitea-data