Google Cloud Build 如何将具有不同路径的上下文发送到 Docker 构建

Jor*_*eFG 2 docker google-cloud-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'
Run Code Online (Sandbox Code Playgroud)

小智 7

将其作为答案发布以使其更具可见性:

正如评论中所述:

要修复它,您需要在构建中使用更多参数:

args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/monolito-arg-phpfpm', '-f', './infra/docker/php-fpm/Dockerfile', '.' ]
Run Code Online (Sandbox Code Playgroud)