2026-04-22 16:51:54 -07:00

103 lines
2.6 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: gitea
labels:
app: gitea
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: gitea
template:
metadata:
labels:
app: gitea
spec:
nodeSelector:
homelab/node-role: worker
containers:
- name: gitea
image: {{ .Values.image }}
ports:
- name: http
containerPort: 3000
- name: ssh
containerPort: 2222
resources:
limits:
memory: {{ .Values.resources.limits.memory }}
env:
- name: USER_UID
value: {{ .Values.puid | quote }}
- name: USER_GID
value: {{ .Values.pgid | quote }}
- name: GITEA__server__DOMAIN
value: gitea.{{ .Values.domain }}
- name: GITEA__server__ROOT_URL
value: https://gitea.{{ .Values.domain }}
- name: GITEA__server__SSH_PORT
value: "2222"
- name: GITEA__server__SSH_LISTEN_PORT
value: "2222"
- name: GITEA__database__DB_TYPE
value: postgres
- name: GITEA__database__HOST
value: gitea-postgres:5432
- name: GITEA__database__NAME
value: {{ .Values.postgres.database }}
- name: GITEA__database__USER
value: {{ .Values.postgres.user }}
- name: GITEA__database__PASSWD
valueFrom:
secretKeyRef:
name: {{ .Values.secretName }}
key: GITEA_DB_PASS
- name: GITEA__service__DISABLE_REGISTRATION
value: "true"
volumeMounts:
- name: data
mountPath: /data
volumes:
- name: data
hostPath:
path: /dogstore/service-data/gitea
type: DirectoryOrCreate
---
apiVersion: v1
kind: Service
metadata:
name: gitea
spec:
selector:
app: gitea
ports:
- name: http
port: 3000
targetPort: 3000
- name: ssh
port: 2222
targetPort: 2222
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: gitea
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls.certresolver: {{ .Values.certResolver }}
spec:
rules:
- host: gitea.{{ .Values.domain }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: gitea
port:
number: 3000