apiVersion: v1 kind: PersistentVolumeClaim metadata: name: forgejo-data namespace: forgejo spec: accessModes: ["ReadWriteOnce"] resources: requests: storage: 20Gi --- apiVersion: apps/v1 kind: Deployment metadata: name: forgejo namespace: forgejo spec: replicas: 1 selector: matchLabels: app: forgejo template: metadata: labels: app: forgejo spec: containers: - name: forgejo image: codeberg.org/forgejo/forgejo:10 env: - name: USER_UID value: "1000" - name: USER_GID value: "1000" - name: FORGEJO__server__ROOT_URL valueFrom: secretKeyRef: name: forgejo-secrets key: root_url - name: FORGEJO__server__DOMAIN valueFrom: secretKeyRef: name: forgejo-secrets key: domain - name: FORGEJO__security__INSTALL_LOCK value: "true" - name: FORGEJO__service__DISABLE_REGISTRATION value: "true" ports: - name: http containerPort: 3000 - name: ssh containerPort: 22 volumeMounts: - name: data mountPath: /data volumes: - name: data persistentVolumeClaim: claimName: forgejo-data --- apiVersion: v1 kind: Service metadata: name: forgejo namespace: forgejo spec: selector: app: forgejo ports: - name: http port: 3000 targetPort: 3000 - name: ssh port: 22 targetPort: 22