问题标签 [google-cloud-build]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1466 浏览

r - 如何在 gcp vm 中部署 docker 映像

我正在尝试将一个简单的 R Shiny 应用程序容器化在 Docker 映像中,部署到由 Google Cloud Platform 托管的虚拟机上,但我遇到了问题。

这些文件存储在 Github 存储中,Docker 映像是使用 GCP/ Cloud Build 上的触发器构建的。Docker 文件基于rocker /shiny 格式。

构建被正确触发并开始构建,但构建在 10 分钟后一直超时。

有没有我可以添加到 Dockerfile 以延长构建时间的命令,还是我的 Dockerfile 错误?

0 投票
1 回答
609 浏览

deployment - Google Cloud Build 是否可以由 Container Registry 中的新 Docker 映像触发?

我正在使用 Google 的云工具设置 CI/CD,并期望有一个触发条件“当新图像上传到 Container Registry 时”。

用例是将部署与源(repo)分开。Source 会推送 Docker 镜像,部署会将它们部署到测试阶段。

但 Cloud Build 只为我提供了三个源代码库之间的触发选择。关联

在 GKE 上下文中,您将使用什么来测试、QA 和生产部署 Docker 映像?

0 投票
3 回答
8934 浏览

kubernetes - 用于更新现有服务资源的 Kubectl apply 命令

目前我正在使用 Kubernetes 版本 1.11.+。以前我总是对我的云构建脚本使用以下命令:

并且命令按预期工作,当时我使用的是 k8s 版本 1.10.+。但是最近我收到以下错误:

  • spec.clusterIP:无效值:“”:字段不可变
  • metadata.resourceVersion:无效值:“”:必须为更新指定

所以我想知道这是否是服务资源的预期行为?

这是我的服务的 YAML 配置:

0 投票
2 回答
1566 浏览

docker - 部署到 Google Compute Engine 的 Docker 映像不断重启

我使用 Docker Compose 通过 Google Cloud Build 构建了一个映像。在我的cloudbuild.yml文件中,我有以下步骤:

  1. 使用 docker compose 构建 docker 镜像
  2. 标记构建的图像
  3. 创建实例模板
  4. 创建实例组

现在,每次构建新实例时都会出现问题,从映像创建的容器不断重新启动并且从未真正启动。尽管如此,我可以构建图像并将其作为实例上的容器启动,独立于来自云构建的图像。

我设法从日志中找到了一些线索:

E1219 19:13:52 7f28dce6d700 api_server.cc:184 Metadata request unsuccessful: Server responded with 'Forbidden' (403): Transport endpoint is not connected

oauth2.cc:289 Getting auth token from metadata server docker

通过在实例中运行以下命令,我也得到了一些线索:

docker -a -i start <container_id>

输出:Unrecognized input header: 99

cloudbuild.yml文件看起来像(我已经用 替换了一些变量...):

0 投票
1 回答
385 浏览

google-chrome - 在未跨步骤共享的云构建步骤中安装 google-chrome(使用卷)

我在安装可跨步骤共享的谷歌浏览器时遇到问题。我的 cloudbuild.yaml 看起来像这样:

第一步下载 chrome,调用which google-chrome返回/usr/bin/google-chrome. 在最后一步中执行相同操作不会返回任何内容。


我还尝试将卷添加到中间的步骤并向上移动该步骤(因为将它放在安装步骤中由于某种原因破坏了 git。我认为/usr/bin由于卷被删除,这不是一个好的共享目录?


尝试 3 正在做类似的事情:

但我收到以下错误:dpkg: error: unable to access dpkg status area: No such file or directory. 我试过这样做mkdir /workspace/chrome,但这并不能解决问题。

0 投票
2 回答
2979 浏览

google-cloud-pubsub - 如何使用拉取请求触发 Google Cloud Build 构建步骤?

我已经使用 cloudbuild.yaml 文件配置了 CI 管道。我正在尝试使用拉取请求启动此管道。似乎提供的构建触发器:https ://cloud.google.com/cloud-build/docs/running-builds/automate-builds不允许此选项。有没有办法使用 webhook 来克服这个限制?就像在拉取请求事件后向云构建主题发送 HTTP 请求并将云功能配置为订阅者以启动管道一样。

谢谢,

0 投票
2 回答
3545 浏览

sonarqube - 如何在 Google Cloud Build 步骤中包含 sonarqube 扫描步骤

我有一个在 Azure 上运行的 sonarqube 服务器和一个 CICD 管道,它在 GCP 之上使用 Google 云构建配置。您是否知道如何在我的 cloudbuild 文件中包含 sonarqube 连接信息作为自定义构建步骤?我正在使用 gradle 构建我的构建并测试我的图像。

0 投票
1 回答
883 浏览

maven - Cloud Build 无法使用 maven 构建简单的构建步骤

测试云构建

我的cloudbuild.yaml的一部分

dockerfile:build 在 bitbucket 管道中完美运行,没问题。我用

但是对于这一步的云构建,我得到了错误:

(JAR_FILE 是从 maven dockerfile 插件传递的

没有这样的文件或目录

为什么?.. 在一天结束的时候,我只是调用 dockerfile:build 并期望它与我从另一个管道构建它时相同。

我的 Dockerfile:

EntryPoint 脚本是(即日志中步骤 15/15 中提到的内容):

(我确实尝试将硬编码值传递给 $SERVCE_FOLDER_NAME、$ACTIVE_PROFILES - 相同 [它适用于 bitbucket 管道])

0 投票
1 回答
119 浏览

google-app-engine - Google App Engine 自定义构建(第 2 代)

据我了解,它会根据命令行选项和诸如(对于 python 运行时)之类的gcloud app deploy东西在幕后触发 Cloud Build 作业。requirements.txt我要做的是扩展这些 Cloud Build 步骤,以包括数据库迁移和部署前的测试等内容。

我可以看到我可以在单独的 GCP 项目的单独容器中运行这些额外的步骤,然后在最后一步执行类似的操作

这似乎是一个好方法吗?以前有没有人为 GAE 项目做过这种事情?

0 投票
1 回答
320 浏览

docker - Cloud Build,maven 包,没有目标文件夹

当我在本地运行这两个命令时,我确实有带有docker文件夹的目标文件夹和其中的图像名称文件

在这一步它失败了:..

cat: /workspace/target/docker/image-name: 没有这样的文件或目录

我试过目标/码头,应用/目标/码头

在我的 Dockerfile 中:

问题:如何查看目标文件夹,如何使 docker push $(cat /workspace/target/docker/image-name) 工作?