简体   繁体   English

使用来自 GitLab 的运行器部署到 Kubernetes 集群

[英]Deploying to Kubernetes cluster using runner from GitLab

I've integrated GitLab with my Digital Ocean Kubernetes cluster.我已经将 GitLab 与我的 Digital Ocean Kubernetes 集群集成在一起。 I am trying to set up a simple manual build that will deploy to my Kubernetes cluster.我正在尝试设置一个简单的手动构建,它将部署到我的 Kubernetes 集群。

My gitlab-ci-yml file details are below:我的 gitlab-ci-yml 文件详细信息如下:

deploy:
  stage: deploy
  image: bitnami/kubectl:latest
  script:
    - kubectl version
    - kubectl apply -f web.yaml

I am not sure why this is not working.我不确定为什么这不起作用。 Currently getting the following error:当前收到以下错误:

Error from server (Forbidden): error when retrieving current configuration... from server for: "web.yaml": ingresses.extensions "hmweb-ingress" is forbidden: User "system:serviceaccount:gitlab-managed-apps:default" cannot get resource "ingresses" in API group "extensions" in the namespace "hm-ns01"来自服务器的错误(禁止):从服务器检索当前配置时出错......从服务器:“web.yaml”:ingresses.extensions“hmweb-ingress”被禁止:用户“system:serviceaccount:gitlab-managed-apps:default”无法在命名空间“hm-ns01”中的 API 组“扩展”中获取资源“入口”

As far as I can understand it cannot execute the kubectl apply.. commands据我了解,它无法执行 kubectl apply.. 命令

Am I doing something wrong?难道我做错了什么?

I think you are missing the environment in your deploy job.我认为您在部署工作中缺少环境。 Modify your job definition to look something like this:将您的工作定义修改为如下所示:

deploy:
  stage: deploy
  image: bitnami/kubectl:latest
  environment:
    name: production
  script:
    - kubectl version
    - kubectl apply -f web.yaml

Where "production" is interchangable with any environment name.其中“生产”可以与任何环境名称互换。

At least that fixed the issue for me.至少这为我解决了这个问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 使用Gitlab Runner时在kubernetes上部署失败 - Deploying on kubernetes fails while using Gitlab runner Kubernetes上的Gitlab运行程序 - Gitlab runner on kubernetes 在Kubernetes中的新名称空间中从gitlab部署映像 - Deploying Images from gitlab in a new namespace in Kubernetes 无法在 Kube.netes 集群中执行 GitLab Runner:无法在命名空间“gitlab”中的 API 组“”中创建资源“秘密” - Not able to execute GitLab Runner in Kubernetes cluster: cannot create resource "secrets" in API group "" in the namespace "gitlab" 在 kubernetes 集群中安装 gitlab-runner 后,Gitlab runner 未激活 - 状态为“New Runner。尚未连接” - Gitlab runners not activated after installing gitlab-runner in kubernetes cluster - With "New Runner. Has not connected yet" status 使用 kubernetes-cd 插件从 Jenkins 管道部署到 Kubernetes EKS 集群时出错 - Error deploying into Kubernetes EKS cluster from Jenkins pipeline using kubernetes-cd plugin 无法使用 Kubernetes 执行程序访问 gitlab 运行程序中的 docker 守护程序 - Cannot access docker daemon in gitlab runner using Kubernetes executor Kubernetes/Openshift 上的 Gitlab-Runner - Gitlab-Runner on Kubernetes/Openshift 在Openshift上从Gitlab-runner运行K8s集群 - Running K8s cluster from Gitlab-runner on Openshift 在 kubernetes 集群上部署 Cassandra - Deploying Cassandra on kubernetes cluster
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM