问题标签 [google-container-builder]
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.
ruby-on-rails-5.1 - Google Cloud Builder 在 Rails 资产预编译上随机超时
我有一个包含以下步骤的 dockerfile。
有时资产会在几秒钟内完美地预编译,有时预编译会超时。超时仅与 Google Cloud Builder 上的某些构建一致。如果我重新启动超时的构建,该构建将再次超时。我能够在许多不同的机器上构建图像而没有任何问题。
我还能够在本地成功运行 cloubuild 步骤,没有任何问题。
java - Google Cloud Platform 管道/容器构建器问题使用 COPY 或 ADD 命令为 Spring Boot Java 应用程序构建 docker 映像
使用 Spring Boot (2.1.3)、Java 8、Maven 创建了基本的 HelloWorld 微服务。
pom.xml 具有如下所示的 Maven 插件条目
Dockerfile 如下所示
使用命令在本地计算机上创建图像
通过从中创建容器来验证。将代码签入到 docker-hub 帐户和 github 帐户。
登录谷歌云平台(GCP),创建kubernetes集群,通过配置helloworld微服务代码所在的github url创建管道(使用容器构建器)。运行构建有两个选项(使用 Dockerfile 或 cloudbuild.yaml)。我正在使用 Dockerfile 来运行构建。
当构建被启动运行时,Dockerfile 中的这一行失败
GCP 日志中出现的错误:
我尝试用 COPY 命令替换它,但问题仍然相同。
注意:我尝试使用 cloudbuild.yaml 以下是我的 cloudbuild.yaml 的外观:
这没有任何区别。问题保持不变。
知道 Springboot Java 应用程序是否有一些特定的配置可以在 Google Cloud Platform 中构建良好的 Dockerfile?
更新 - 1
根据在本地机器上尝试以下步骤的评论:
运行命令
mvn clean
。那个清理过的目标文件夹更新了 Dockerfile
FROM maven:3.5-jdk-8 AS build
COPY src 。
复制 pom.xml 。
运行 mvn -f pom.xml 清理包FROM openjdk:8
VOLUME /tmp
COPY --from=build target/helloworld.jar helloworld.jar
EXPOSE 8081
ENTRYPOINT ["java","-jar","helloworld.jar"]
Ran
docker build . -t helloworld:v1
命令和创建的图像。然后运行命令启动容器:
docker run -p 8081:8081 -n helloworld-app -d helloworld:v1
容器启动并退出,日志中出现错误:
Exception in thread "main" java.lang.ClassNotFoundException: com.example.HelloWorldApplication at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
gcloud - 使用错误集群的 gcloud 凭据
我将容器构建器与 cloudbuild.yaml 一起使用,我的问题是正在使用不存在的旧集群名称。我曾尝试删除我的服务密钥并再次创建它,但无济于事。
集群名称amx-cluster-au9
是不再存在的旧集群。是什么导致了这个问题,我该如何解决?
编辑:cloudbuild.yaml 文件
基本上我不知道为什么它一直引用我已删除且不再使用的集群。
如果它可能有帮助,这里是日志。
kubernetes - 如何以编程方式从其中一个集群中获取当前的 GKE 项目 ID?
我想通过 Java 客户端或 GCloud API 本身从其中一个集群中获取当前的 GKE 项目 ID。
- 我在特定 Google Cloud 项目的 GKE 集群中运行 java 容器
ClusterManagerClient
我用适当的初始化ClusterManagerSettings
-> 是否可以使用此客户端获取此特定项目 ID?
(我希望每个 GKE 集群中都有一个全局上下文,我们可以在其中知道我们正在运行的当前项目)。
谢谢
python - Google Cloud Run 偶尔返回服务器不可用
我在 Google Cloud Run 上的https://recycler-mvdcj7favq-uc.a.run.app/上运行 Flask 应用程序,偶尔刷新几次似乎会加载页面时出现 503 服务器不可用。此外,有时会丢失一些静态文件。关于静态文件,可能是因为我让 Flask 来检索静态文件,但我对为什么我经常让服务器不可用感到困惑。
google-cloud-platform - 构建容器映像时出现 GCP 错误
我必须测试需要从 Google Cloud Run ping google.com 的功能。为此,我创建了一个简单的 python 脚本来 ping google.com。我将 Dockerfile 和 .dockerignore 添加到 Google文档中提到的目录中。当我尝试构建容器映像时,出现以下错误:
我是存储管理员和 Cloudbuild 编辑器,我可能缺少哪些访问权限?
google-cloud-platform - 你能缓存社区建设者吗?
我需要在我的构建管道中使用 Helm。如文档中所述,我下载了Helm 社区构建器的源代码并将构建的图像推送到 GCR。
现在,如果我在管道中使用构建器,Google Build 从 GCR 下载构建器映像并运行 Helm 命令需要花费大量时间。
有什么办法可以加快这个过程吗?我可以以某种方式缓存构建器图像的中间层吗?