【问题标题】:GCP Kuberentes Cloud Deploy vs Cloud buildGCP Kubernetes 云部署与云构建
【发布时间】:2021-09-24 05:26:04
【问题描述】:

我正在通过 github 在 GCP 集群上部署一个 kubernetes 应用程序。然后一切正常..我遇到了cloud deploy delivery pipeline..现在我被卡住了。

在此处关注docs

apiVersion: skaffold/v2beta12
kind: Config
build:
  artifacts:
  - image: skaffold-example
deploy:
  kubectl:
    manifests:
      - k8s-*

k8s 文件夹中,我的部署文件如下所示

apiVersion: apps/v1
kind: Deployment
metadata:
  name: ixh-auth-depl
  labels:
    app: ixh-auth
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ixh-auth
  template:
    metadata:
      labels:
        app: ixh-auth
    spec:
      containers:
      - name: ixh-auth
        image: mb/ixh-auth:latest
        ports:
        - containerPort: 3000
        resources:
          requests:
            cpu: 100m
            memory: 500Mi

但它给出了错误invalid kubernetes manifest。我找不到任何可以阅读的内容,也不知道如何继续。

【问题讨论】:

  • 要进行故障排除,请更改您的 skaffold.yaml 文件,以将清单文件一一包含在您的文件夹中,而不是使用“k8s-*”,或者应用分而治之来找出有问题的文件。

标签: kubernetes google-cloud-platform google-kubernetes-engine skaffold


【解决方案1】:

声明清单的正确方法是这样。通配符可能不起作用。这里的文件夹名称是k8s-manifests

deploy:
  kubectl:
    manifests:
      - k8s-manifests/redis-deployment.yml
      - k8s-manifests/node-depl.yml
      - k8s-manifests/node-service.yml
  

【讨论】:

【解决方案2】:

@Abhishek Rai,我同意你的回答。 Google Cloud Deploy 使用 skaffold render 来呈现您的 Kubernetes 清单,将未标记的映像名称替换为您正在部署的容器映像的标记映像名称。然后,当您推广该版本时,Google Cloud Deploy 使用 skaffold apply 应用清单并将映像部署到您的 Google Kubernetes Engine 集群。清单文件的内容应包括 yaml 文件的路径

deploy:
  kubectl:
    manifests:
      - PATH_TO_MANIFEST

这样就不会遇到错误。详情请参阅document

【讨论】:

    猜你喜欢
    • 2022-09-01
    • 1970-01-01
    • 2021-03-30
    • 2021-04-14
    • 1970-01-01
    • 2022-06-15
    • 2021-04-13
    • 1970-01-01
    • 2021-08-19
    相关资源
    最近更新 更多