使用 Google Cloud Build 自动部署 Google App Engine

使用 Google Cloud Build 自动部署 Google App Engine

我有一个 Go 应用程序,在构建过程中需要GCC。默认的 GAE Go 运行时不支持GCC,因此我必须配置我的app.yaml以将运行时定义为自定义,如下所示:

runtime: custom
env: flex

network:
  session_affinity: true

manual_scaling:
  instances: 1

另外,添加一个docker文件如下:

FROM golang:latest
RUN mkdir /app
ADD . /app/
WORKDIR /app
RUN go build -o main .
CMD ["/app/main"]

问题是我无法在 Push 触发后自动从 Cloud Build 进行部署,因为 GAE 部署不接受同时拥有Dockerfilecloudbuild.yaml定义。同时,如果我添加了cloudbuild.yaml类似以下内容的内容:

-steps:
  - name: "gcr.io/cloud-builders/gcloud"
    args: ["app", "deploy"]
timeout: "1600s"

我将被迫删除Dockerfile!有没有办法使用自定义运行时自动执行 GAE 构建和部署?

答案1

看看你描述的情况,我可以找到相关的公开帖子GitHub堆栈溢出

作为一种选择,尝试移动云构建.yaml将文件移至子文件夹以缓解此问题。请记住更新 Cloud Build 触发器以指向移动的文件。

如果有帮助的话请告诉我!

相关内容