标签: google-cloud-run

(Terraform) 左操作数的值不合适:需要一个数字

GCP上,我尝试使用下面的 Terraform 代码运行Cloud Run服务“renderer”,在此代码中,我使用plus(连接“gcr.io/”、变量var.project_id“/renderer:latest” +) :

resource "google_cloud_run_service" "renderer" {
  name     = "renderer"
  location = "asia-northeast1"

  template {
    spec {
      containers {
        image = "gcr.io/" + var.project_id + "/renderer:latest" // Here
      }
      service_account_name = google_service_account.renderer_identity.email
    }
  }

  traffic {
    percent         = 100
    latest_revision = true
  }
}
Run Code Online (Sandbox Code Playgroud)

然后,当我应用上面的代码时,出现以下错误:

resource "google_cloud_run_service" "renderer" {
  name     = "renderer"
  location = "asia-northeast1"

  template {
    spec {
      containers {
        image = "gcr.io/" + var.project_id + …
Run Code Online (Sandbox Code Playgroud)

google-cloud-platform terraform devops terraform-provider-gcp google-cloud-run

2
推荐指数
1
解决办法
6893
查看次数

如何在 Cloud Run 上部署 Typescript 项目

Cloud Run error: The user-provided container failed to start and listen on the port defined provided by the PORT=8080 environment variable. Logs for this revision might contain more information. 
Run Code Online (Sandbox Code Playgroud)

我的项目使用端口8080。但Cloud Run似乎无法识别它。貌似JavaScript的node js不需要单独设置,但是这里好像是有必要的。我使用 ts-node 可以正常打开端口。

node.js google-cloud-run

2
推荐指数
1
解决办法
2675
查看次数

云运行的最小服务帐户权限集

我想在云运行上部署我的应用程序,我不想给我的云运行默认服务帐户,因为它包含高级别的权限,而是为了安全目的我想创建一个自定义服务帐户

所以我向我的定制服务帐户提供这些权限:-

1.云运行管理

2.服务帐号用户

我是否必须为自定义帐户提供任何其他权限才能连接到云 sql 并使用持续部署功能进行云运行,或者我缺少自定义服务帐户的任何其他权限。

google-cloud-platform google-cloud-run

2
推荐指数
1
解决办法
1151
查看次数

如何在 Google Cloud Run 中配置 nginx 反向代理以指向不同的 Google Cloud Run 应用

我在 GCP Cloud Run 中设置了一个以 nginx 为前端的 Web 应用程序,效果非常好。我正在尝试使用 nginx 将请求代理到另一个 GCP Cloud Run 服务的特定路由。例如,我希望请求能够https://my-cloud-run-frontend.app.run解析到https://my-cloud-run-frontend.run.app,但是我希望请求能够 https://my-cloud-run-frontend.run.run/api/*被代理https://my-cloud-run-backend.run.app

这两个云运行服务都使用 IAM Auth。

当我在本地 docker 容器中运行服务时,代理效果很好。同样,如果我frontend在 Cloud Run 设置中从应用程序中删除 IAM 身份验证,一切似乎都会正常。

但是,启用 IAM 身份验证后,请求会https://my-cloud-run-frontend.run.app成功,但请求会https://my-cloud-run-frontend.run.app/api/因未经授权而失败(具体来说,错误是从frontend云运行应用程序引发的)。

https://my-cloud-run-backend.run.app我已经确认,通过使用相同的身份验证令牌并直接向 和发出请求https://my-cloud-run-frontend.run.app,身份验证可以正常工作,并且工作正常。

做了一些研究,我发现我可能需要设置一个Host标头,所以我尝试将标头设置Host为我的目的地(https://my-cloud-run-backend.run.app网址)。这会导致调用返回https://my-cloud-run-frontend.run.app/api400 错误。

我的nginx.conf.template文件:

server {

  access_log /dev/stdout;
  listen 8080;

  location / {

    root   /usr/share/nginx/html;
    index  index.html index.htm;
    try_files …
Run Code Online (Sandbox Code Playgroud)

nginx google-cloud-platform nginx-reverse-proxy google-cloud-run

2
推荐指数
1
解决办法
4042
查看次数

私有环境中的 Google Cloud Api Gateway 和 Cloud Run

我在 Cloud Run 后端前面有一个 Google Cloud Api 网关。如果两者都是公开的,一切正常。

如果我在 Cloud Run 上选中“仅允许内部流量”,Api Gateway 无权访问后端。有没有办法在 Api Gateway 和 Cloud Run 之间保持私有连接?

另一个问题。有没有办法使用私有 IP 在我的网络中拥有 Api 网关?

google-cloud-platform google-cloud-run google-cloud-api-gateway

2
推荐指数
1
解决办法
1176
查看次数

如何通过Appengine应用程序访问Cloud run服务

我创建了一个云运行服务,我想在我的 Web 应用程序中访问此服务,该应用程序在 Appengine(灵活实例)中运行。我的网络应用程序位于与创建的云运行服务不同的谷歌云项目中。

我不想让云运行服务向公众开放,因此我在“身份验证”部分选择了“需要身份验证”选项。并在 Ingress 部分选择“允许所有流量”。还为我托管 web 应用程序的 appengine 服务帐户添加了云运行权限。完成这些设置后,我无法通过 appengine 访问云运行服务(url)。它返回禁止错误。我正在通过 sshing 到 Appengine 实例来测试对 url 的访问。

那么,推荐的选项和设置是什么?

google-app-engine google-cloud-platform google-cloud-run

2
推荐指数
1
解决办法
530
查看次数

Cloud Run:连接到另一个 GCP 项目上的 CloudSQL 数据库

我在将 [项目 A] Cloud Run 实例连接到 [项目 B] Cloud SQL 实例时遇到问题。

我已经按照本文所述设置了服务帐户权限:https://cloud.google.com/sql/docs/mysql/connect-run

哪些是这样的:

  • 我在 [项目 B] 上创建了一个具有 Cloud SQL 管理员和 Cloud SQL 客户端权限的服务帐号。
  • 我在 [项目 A] 上为 Cloud Run 实例创建了一个服务帐户,此帐户在 [项目 B] 的服务帐户上具有用户角色

这两个项目都启用了 Cloud SQL Admin API,如果我在 [项目 B] 上构建相同的 Cloud Run 实例,它的连接不会出现任何问题,所以我想这是一个权限问题。

我从 [Project A] Cloud Run 的日志中收到的错误是:googleapi: Error 403: The client is notauthorized to make this request., notAuthorized

permissions google-cloud-sql google-cloud-platform google-cloud-run

2
推荐指数
1
解决办法
1436
查看次数

GCP Cloud Run 容器因未捕获信号而失败:11 分段错误 - 节点 - Fastify

我有一个使用 Fastify 的节点服务器应用程序。我可以毫无问题地在本地构建并运行该映像。但是当我部署到云时,它无法启动并给出Uncaught signal: 11 - Segmentation failure。经过一番挖掘后,我发现这是由于第三方库造成的,当我删除它时问题就消失了。库是https://www.npmjs.com/package/@transmute/vc.js

不幸的是,不使用该库不是一个选择。本地一切正常,但在云端却失败。我尝试了从 14.18 到最新的不同节点版本。我还尝试将容器内存限制增加到 1024Mi,但没有成功。

有人有主意吗?

segmentation-fault node.js google-cloud-platform fastify google-cloud-run

2
推荐指数
1
解决办法
2115
查看次数

如何列出 Cloud Run 的非活跃版本?

这有点类似于如何检查最新的 Cloud Run 版本是否已准备好提供服务

\n

我想列出 Cloud Run 服务的非活动修订版本,以便我可以删除它们。我可以使用以下方式列出它们:

\n
gcloud run revisions list --region europe-west1 --service service-name\n
Run Code Online (Sandbox Code Playgroud)\n

清单如下所示:

\n
   REVISION                ACTIVE  SERVICE       DEPLOYED                 DEPLOYED BY\n\xe2\x9c\x94  xxxxx-server-00083-ban  yes     xxxxx-server  2022-12-22 18:13:50 UTC  xxxxx-server@***.iam.gserviceaccount.com\n\xe2\x9c\x94  xxxxx-server-00082-few          xxxxx-server  2022-12-22 18:09:27 UTC  xxxxx-server@***.iam.gserviceaccount.com\n\xe2\x9c\x94  xxxxx-server-00081-zex          xxxxx-server  2022-12-22 18:03:00 UTC  xxxxx-server@***.iam.gserviceaccount.com\n\xe2\x9c\x94  xxxxx-server-00080-bad          xxxxx-server  2022-12-22 18:02:02 UTC  xxxxx-server@***.iam.gserviceaccount.com\n
Run Code Online (Sandbox Code Playgroud)\n

现在我想只过滤那些没有的ACTIVE:yes。我尝试添加--filter=\'-active:*\',但似乎没有任何效果,并且收到警告:

\n
WARNING: The following filter keys were not present in any resource : active\n
Run Code Online (Sandbox Code Playgroud)\n

--format=JSON当我尝试使用或列出信息时--format=YAML,我对信息不知所措,其中包括列出所有过去的状态转换,例如:

\n
status:\n …
Run Code Online (Sandbox Code Playgroud)

gcloud google-cloud-run

2
推荐指数
1
解决办法
604
查看次数

使用 Rust 访问 google cloud run (docker) 中的环境变量的适当方法

我用 Rust 构建了一个 API,并通过 Google Cloud Run 部署它。在我的 API 中,我访问存储为环境变量的远程数据库的 URI。

当我在本地计算机上运行该程序时,可以使用 访问环境变量env!("MONGODB_URI_2")

当我使用该标志将程序部署到 gcloud 时,--set-env-vars "MONGODB_URI_2", "theurigoeshere"相同的 env 宏找不到变量并出现恐慌。

编辑: 我尝试从键中删除下划线并将文本全部小写,然后再发布此内容,但没有帮助..

macros rust docker google-cloud-run

2
推荐指数
1
解决办法
618
查看次数