diff options
| author | Paul Buetow <paul@buetow.org> | 2026-01-09 11:06:02 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-01-09 19:40:51 +0200 |
| commit | ec8bd651d57deab371021c27b88f6698376f8e78 (patch) | |
| tree | 3a60df2bd9c653e7bfdaaab67b5bf52230beda1e /f3s/git-server/helm-chart/templates/persistent-volume.yaml | |
| parent | 7ab1222310c23c5f1305c48c199ce432c2fd0848 (diff) | |
Add self-hosted git server with SSH and cgit web UI
Deploy a self-hosted git repository solution to replace external Codeberg dependency.
Components:
- SSH git server: Alpine-based container with OpenSSH and git
- cgit web UI: Browse repositories at cgit.f3s.buetow.org
- Single pod design: git-server + cgit containers sharing storage
Infrastructure:
- Docker image in git-server/docker-image/ with Justfile build automation
- Helm chart in git-server/helm-chart/ for Kubernetes deployment
- 5Gi ReadWriteMany PVC for NFS-backed repository storage
- ClusterIP service for ArgoCD internal access
- NodePort 30022 for external SSH push access
- Traefik ingress for cgit web UI
ArgoCD Application manifest deployed to cicd namespace.
Note: SSH keys must be created as Kubernetes secrets manually, not in git.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'f3s/git-server/helm-chart/templates/persistent-volume.yaml')
| -rw-r--r-- | f3s/git-server/helm-chart/templates/persistent-volume.yaml | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/f3s/git-server/helm-chart/templates/persistent-volume.yaml b/f3s/git-server/helm-chart/templates/persistent-volume.yaml new file mode 100644 index 0000000..174e66e --- /dev/null +++ b/f3s/git-server/helm-chart/templates/persistent-volume.yaml @@ -0,0 +1,27 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: git-server-pv +spec: + capacity: + storage: 5Gi + volumeMode: Filesystem + accessModes: + - ReadWriteMany + persistentVolumeReclaimPolicy: Retain + hostPath: + path: /data/nfs/k3svolumes/git-server + type: Directory +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: git-server-pvc + namespace: cicd +spec: + storageClassName: "" + accessModes: + - ReadWriteMany + resources: + requests: + storage: 5Gi |
