# Forgejo on k3s --- apiVersion: v1 kind: Namespace metadata: name: forgejo --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: forgejo-data namespace: forgejo spec: accessModes: - ReadWriteOnce storageClassName: local-path resources: requests: storage: 10Gi --- apiVersion: apps/v1 kind: Deployment metadata: name: forgejo namespace: forgejo spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: forgejo template: metadata: labels: app: forgejo spec: containers: - name: forgejo image: codeberg.org/forgejo/forgejo:11.0 ports: - containerPort: 3000 name: http - containerPort: 22 name: ssh env: - name: USER_UID value: "1000" - name: USER_GID value: "1000" - name: FORGEJO__database__DB_TYPE value: postgres - name: FORGEJO__database__HOST value: postgres-scobleclaw-rw.database.svc.cluster.local:5432 - name: FORGEJO__database__NAME value: forgejo - name: FORGEJO__database__USER value: forgejo - name: FORGEJO__database__PASSWD valueFrom: secretKeyRef: name: postgres-users key: forgejo-password - name: FORGEJO__server__ROOT_URL value: "https://os.scoble.me/forgejo/" - name: FORGEJO__server__HTTP_PORT value: "3000" - name: FORGEJO__server__DOMAIN value: os.scoble.me - name: FORGEJO__server__DISABLE_SSH value: "false" - name: FORGEJO__server__SSH_PORT value: "2222" volumeMounts: - name: data mountPath: /data resources: requests: memory: "256Mi" cpu: "250m" limits: memory: "512Mi" cpu: "1" volumes: - name: data persistentVolumeClaim: claimName: forgejo-data --- apiVersion: v1 kind: Service metadata: name: forgejo namespace: forgejo spec: ports: - name: http port: 3000 targetPort: 3000 - name: ssh port: 22 targetPort: 22 selector: app: forgejo