如何解决使用 Google Cloud Build 执行 Skaffold 部署?
我为 kubernetes 和 skaffold 以及 dockerfile 开发了 yaml 文件。我使用 Skaffold 的部署在我的本地机器上运行良好。
现在我需要在我的 Google Cloud 项目中的 k8s 集群中实现相同的部署,由 GitHub 存储库中的新标签触发。我发现我必须使用Google Cloud Build,但我不知道如何从cloudbuild.yaml文件中执行Skaffold。
解决方法
https://github.com/GoogleCloudPlatform/cloud-builders-community 中有一个脚手架图像
要使用它,请按照以下步骤操作:
- 克隆存储库
git clone https://github.com/GoogleCloudPlatform/cloud-builders-community
- 转到脚手架目录
cd cloud-builders-community/skaffold
- 构建镜像:
gcloud builds submit --config cloudbuild.yaml .
然后,在您的 cloudbuild.yaml
中,您可以添加一个基于此的步骤:
- id: 'Skaffold run'
name: 'gcr.io/$PROJECT_ID/skaffold:alpha' # https://github.com/GoogleCloudPlatform/cloud-builders-community/tree/master/skaffold
env:
- 'CLOUDSDK_COMPUTE_ZONE=us-central1-a'
- 'CLOUDSDK_CONTAINER_CLUSTER=[YOUR_CLUSTER_NAME]'
entrypoint: 'bash'
args:
- '-c'
- |
gcloud container clusters get-credentials [YOUR_CLUSTER_NAME] --region us-central1-a --project [YAOUR_PROJECT_NAME]
if [ "$BRANCH_NAME" == "master" ]
then
skaffold run
fi
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。