Google Cloud Build 如何将具有不同路径的上下文发送到 Docker build
Google Cloud Build how to send context with different path to Docker build
我有这两个 docker 容器需要构建,nginx
和 php-fpm
但是,两者都需要使用 ROOT 目录作为上下文,Google Cloud Build 使用 nginx 和 php-fpm(Dockerfile 所在的目录)作为上下文。
我该如何更改?
这是我的 cloudbuild.yaml 文件
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/monolito-arg-phpfpm', './infra/docker/php-fpm' ]
id: 'Build Docker PHP-FPM image'
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/monolito-arg-nginx', './infra/docker/nginx' ]
id: 'Build Docker nginx image'
images:
- 'us-central1-docker.pkg.dev/$PROJECT_ID/monolito-arg/monolito-arg-phpfpm'
- 'us-central1-docker.pkg.dev/$PROJECT_ID/monolito-arg/monolito-arg-nginx'
您可以使用 dir 选项自定义您的步骤上下文。
将其作为答案发布以提高知名度:
如 中所述:
要修复它,您需要在构建中添加更多参数:
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/monolito-arg-phpfpm', '-f', './infra/docker/php-fpm/Dockerfile', '.' ]
我有这两个 docker 容器需要构建,nginx
和 php-fpm
但是,两者都需要使用 ROOT 目录作为上下文,Google Cloud Build 使用 nginx 和 php-fpm(Dockerfile 所在的目录)作为上下文。
我该如何更改?
这是我的 cloudbuild.yaml 文件
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/monolito-arg-phpfpm', './infra/docker/php-fpm' ]
id: 'Build Docker PHP-FPM image'
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/monolito-arg-nginx', './infra/docker/nginx' ]
id: 'Build Docker nginx image'
images:
- 'us-central1-docker.pkg.dev/$PROJECT_ID/monolito-arg/monolito-arg-phpfpm'
- 'us-central1-docker.pkg.dev/$PROJECT_ID/monolito-arg/monolito-arg-nginx'
您可以使用 dir 选项自定义您的步骤上下文。
将其作为答案发布以提高知名度:
如
要修复它,您需要在构建中添加更多参数:
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/monolito-arg-phpfpm', '-f', './infra/docker/php-fpm/Dockerfile', '.' ]