一般来说,我会看到如下所示的云构建配置示例。为什么 cloud-sdk 构建步骤使用入口点,而 docker 构建步骤不使用?
steps:
# Build the container image
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '--tag', 'gcr.io/project-id/project-name','.']
# Push the container image to Container Registry
- name: 'gcr.io/cloud-builders/docker'
args: ['push', 'gcr.io/project-id/project-name']
# Deploy container image to Cloud Run
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
entrypoint: 'gcloud'
args: ['run', 'deploy', 'project-name', '--image', 'gcr.io/project-id/project-name', '--region', 'us-central1']
我的运行理论是它与关键字 argname
相同的最后一个单词有关。cmd
例如。gcr.io/cloud-builders/docker
结束,docker
但cloud-sdk
需要cmd
关键字gcloud
才能运行。
为什么 cloud-sdk 构建步骤使用入口点,而 docker 构建步骤不使用?
这是因为入口gcloud
点将用于调用gcloud run deploy
命令以将其部署在 Cloud Run 中。
另一方面,Dockerfile 有自己的开源配置,因此它可以在 gcloud 之外的其他平台上运行。
此链接中有关构建配置文件结构的更多信息args
和entrypoint
可用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句