如何配置我的 Kubernetes 集群以使用 Gitlab CI?
How do I configure my Kubernetes cluster to work with Gitlab CI?
我正在学习如何使用 Kubernetes 和 Gitlab CI/CD 所以我按照 the documentation 在我的 Kubernetes 集群中安装了一个 Gitlab 代理。我写了一个简单的 hello world 管道,看看它是否有效
image: "docker.io/ubuntu"
stages:
- build
build-contabo:
stage: build
script:
- echo "hello world"
但管道不会 运行 并抱怨缺少配置:
Running with gitlab-runner 14.6.0 (5316d4ac)
on vmi769777 NWjdRisx
Preparing the "kubernetes" executor 00:09
WARNING: Namespace is empty, therefore assuming 'default'.
Using Kubernetes namespace: default
ERROR: Preparation failed: getting Kubernetes config: invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable
我阅读了如何 configure an agent,但找不到解决此错误的任何内容。
我还部署了一个 hello world kubernetes 部署来检查我的集群是否不工作,但它 运行 成功。
如何提供配置以便我的管道 运行s?
这是Kubernetes集群还是Gitlab配置的问题?
你试过设置KUBE_CONFIG_PATH吗?我遇到了同样的错误,但是 export KUBE_CONFIG_PATH=/path/to/kubeconfig 似乎解决了这个问题。
我发现了问题。
所以 kubectl
有效,因为当 运行 时我在 root 用户中。
此用户在其主页 /home/root/.kube
.
中有一个 kubernetes 配置
gitlab runner 在不同的用户中运行,在我的例子中 gitlab-runner
。
该用户没有 kubernetes 配置目录。
从根目录复制它解决了问题:cp -r /home/root/.kube /home/gitlab-runner/.kube
我正在学习如何使用 Kubernetes 和 Gitlab CI/CD 所以我按照 the documentation 在我的 Kubernetes 集群中安装了一个 Gitlab 代理。我写了一个简单的 hello world 管道,看看它是否有效
image: "docker.io/ubuntu"
stages:
- build
build-contabo:
stage: build
script:
- echo "hello world"
但管道不会 运行 并抱怨缺少配置:
Running with gitlab-runner 14.6.0 (5316d4ac)
on vmi769777 NWjdRisx
Preparing the "kubernetes" executor 00:09
WARNING: Namespace is empty, therefore assuming 'default'.
Using Kubernetes namespace: default
ERROR: Preparation failed: getting Kubernetes config: invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable
我阅读了如何 configure an agent,但找不到解决此错误的任何内容。 我还部署了一个 hello world kubernetes 部署来检查我的集群是否不工作,但它 运行 成功。
如何提供配置以便我的管道 运行s? 这是Kubernetes集群还是Gitlab配置的问题?
你试过设置KUBE_CONFIG_PATH吗?我遇到了同样的错误,但是 export KUBE_CONFIG_PATH=/path/to/kubeconfig 似乎解决了这个问题。
我发现了问题。
所以 kubectl
有效,因为当 运行 时我在 root 用户中。
此用户在其主页 /home/root/.kube
.
gitlab runner 在不同的用户中运行,在我的例子中 gitlab-runner
。
该用户没有 kubernetes 配置目录。
从根目录复制它解决了问题:cp -r /home/root/.kube /home/gitlab-runner/.kube