#git-remote #remote #git #kubernetes #git-repository #kubernetes-cluster

app git-remote-k8s

一个将PVC作为远程使用的Git远程辅助工具

1 个不稳定版本

0.2.0 2023年11月2日
0.1.0 2023年11月2日

#1405开发工具

AGPL-3.0-only

47KB
997 代码行

git-remote-k8s

一个Git远程辅助工具,允许使用Kubernetes PVC作为git仓库存储。

安装

首先,安装Rust。

现在,从已克隆的仓库内部,安装git-remote-k8s

cargo install git-remote-k8s

先决条件

您必须能够使用kubectl访问一个Kubernetes集群,在该集群中可以通过某种方式配置持久卷并将其绑定到请求。如果您可以“为Pod创建新的PVC”,您可能已经准备好了。如果您始终得到一个挂起的请求,您需要设置一个支持动态预配的卷提供程序。我最近一直在使用Longhorn,因为它有非常简单的备份。我对此非常满意,但YMMV。k3s也内置了本地动态预配器,也可以使用。

警告

如果您在与minikube或类似工具一起使用此功能后删除集群,您将丢失存储在卷中的git仓库!在非生产环境中使用时请谨慎。在生产环境中也要谨慎!不要忘记备份。

用法

git-remote-k8s的URL格式为k8s://kubectl-context/namespace/pvc

一个常见的kubectl上下文名称是default。您可以通过kubectl config view找到它,并且一些信息可以在kubectl速查表中找到。

例如,这个通过default上下文访问的集群中的PVC将被称为k8s://default/git-remote-test/git-remote-k8s

NAMESPACE          NAME                                                                                                             STATUS        VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
git-remote-test    git-remote-k8s                                                                                                   Bound         pvc-abcdef10-1023-1025-1024-123456789123   1Gi        RWO            ssd            91m

克隆

git clone k8s://context/namespace/pvc

添加远程

git remote add origin k8s//context/namespace/pvc

依赖项

~70MB
~1M SLoC