标签: google-cloud-run

用于查询 bigquery 的 Google Cloud Run 权限

我有一个使用 docker 在谷歌云中运行的小型 python 应用程序。该应用程序由 http 请求触发,在大查询中执行查询并返回结果。不幸的是,我收到以下权限错误:

Reason: 403 POST https://bigquery.googleapis.com/bigquery/v2/projects/XXXX/jobs: Access Denied: Project XXXX: User does not have bigquery.jobs.create permission in project XXXX.\n\n(job ID: XXXX-XX-XX-XX-XXXX)\n\n
Run Code Online (Sandbox Code Playgroud)

我知道我需要提供从云运行到大查询的访问权限。我该怎么做?给哪个用户?我怎么知道?

google-bigquery google-cloud-platform google-iam google-cloud-iam google-cloud-run

0
推荐指数
1
解决办法
2035
查看次数

错误:(gcloud.run.deploy) 解析 [service] 时出错。[service] 资源未正确指定。未能找到属性 [服务]

我正在尝试使用以下命令将我的 nodejs 应用程序部署到云运行

 gcloud run deploy --image gcr.io/[project-id]/helloworld --platform managed
Run Code Online (Sandbox Code Playgroud)

在运行此命令之前,我构建了两个云构建映像并尝试使用上述命令部署最新构建。但是得到以下错误

ERROR: (gcloud.run.deploy) Error parsing [service].
The [service] resource is not properly specified.
Failed to find attribute [service]. The attribute can be set in the following ways:
- provide the argument [SERVICE] on the command line
- specify the service name from an interactive prompt
Run Code Online (Sandbox Code Playgroud)

我不知道是哪个导致错误。有人可以帮我解决这个问题吗?谢谢

node.js google-cloud-platform google-cloud-run

0
推荐指数
1
解决办法
1103
查看次数

我可以从 Cloud Run 连接到 Compute Engine 中托管的 Postgres 实例吗?(不是 Cloud SQL)

我希望将 Cloud Run 连接到在 Compute Engine(而不是 Cloud SQL)的端口 5432 中运行的 Postgres 数据库。我从文档中假设这是无法完成的。真的是这样吗?

postgresql google-cloud-platform google-cloud-run

0
推荐指数
1
解决办法
99
查看次数

在云上运行非 Web 应用程序有意义吗?

我看到文档中的所有示例都使用某种形式的简单 Web 应用程序(例如,Python 中的 Flask)。是否可以将云运行用作非 Web 应用程序?例如,部署 cloud run 使用 python 脚本,然后使用 GCP Scheduler 每小时调用 cloud run 来运行该脚本?基本上,我对此的想法是避免部署 Compute Engine 并为其付费,并且仅在通过调度程序调用云运行容器时付费。

google-cloud-platform google-cloud-run

0
推荐指数
1
解决办法
829
查看次数

将 Google Cloud Run 实例连接到 MongoDB

我正在尝试将 Cloud Run 服务连接到 MongoDB Atlas 服务器,而不必将所有 IP 列入白名单,但我无法做到。我已经尝试过教程,但它不适用于 mongo。我尝试了 SSH 隧道,但也没有奏效。

python mongodb google-cloud-platform mongodb-atlas google-cloud-run

0
推荐指数
1
解决办法
1222
查看次数

Pubsub 签署 JWT 令牌以使用错误的密钥进行推送

我正在为我的后端使用以下堆栈:

  1. 云端点
  2. 带有 ESPv2 的 Cloud Run Gateway => 检查 API 密钥并验证 JWT
  3. Cloud Run gRPC 服务器实现
  4. 当兴趣发生变化时,我会在 pubsub 上发布一条消息

现在,附加到该 pubsub 主题,我有一个推送订阅,它使用服务帐户和指定的受众触发 Cloud Run 方法。

设置: 在此处输入图片说明

现在,我需要配置 Cloud Run Gateway 以验证 pubsub 为指定服务帐户生成的 JWT。这是api_config.yaml按照此处的文档完成的:https : //cloud.google.com/pubsub/docs/push#jwt_format

发行者https://accounts.google.com和我在 pubsub 订阅中指定的受众。

authentication:
  providers:
    - id: gcloud
      jwks_uri: https://www.googleapis.com/robot/v1/metadata/x509/875517523825-compute@developer.gserviceaccount.com
      issuer: https://accounts.google.com
      audiences: project.clounrun.admin
  rules:
    - selector: project.v2.Events.*
      requirements:
        - provider_id: gcloud
Run Code Online (Sandbox Code Playgroud)

可以在此处找到此服务帐户的 jwks: https://www.googleapis.com/robot/v1/metadata/x509/SERVICE-ACCOUNT-ID

就我而言: https://www.googleapis.com/robot/v1/metadata/x509/875517523825-compute@developer.gserviceaccount.com

https://cloud.google.com/endpoints/docs/grpc/service-account-authentication#set_up_authentication_in_the_grpc_api_configuration

我已经激活了 ESPv2 的调试日志,这是我在尝试验证 JWT 时得到的信息:

13:07:37.027 request headers complete (end_stream=false):\n\':authority\', …
Run Code Online (Sandbox Code Playgroud)

jwt google-cloud-platform google-cloud-pubsub google-cloud-endpoints-v2 google-cloud-run

0
推荐指数
1
解决办法
433
查看次数

Cloud Run 重启问题

我将一个简单的 java spring boot 部署到 google cloud run 中。我通过邮递员测试了 api 并且它起作用了。

但是,如果我停止发送请求 10 或 15 分钟,之后的第一个请求会导致重新启动/启动容器。

因此,不确定 cloud run 是如何工作的,但似乎在空闲超时后它会关闭容器。

这是预期的还是这里有问题?

spring-boot google-cloud-platform google-cloud-run

0
推荐指数
1
解决办法
672
查看次数

尝试通过 Cloud Scheduler 调用使用 firebase-admin 对服务帐户进行身份验证?错误:Firebase ID 令牌具有不正确的“iss”(颁发者)声明

我正在尝试验证从 Cloud Scheduler cron 作业对我的服务器(在 Cloud Run 上)进行的 API 调用。

我正在尝试使用服务帐户来实现此目的。

注意:这一切都发生在同一个项目内。

参考:

这就是我正在做的:

第 1 步- 创建服务帐户

我访问https://console.cloud.google.com/apis/credentials并创建了一个新的服务帐户。我已将角色指定为owner

在此输入图像描述

第 2 步- 创建 cron 作业。

我像往常一样访问https://console.cloud.google.com/cloudscheduler创建 cron 作业。

在此输入图像描述

在该service account字段中,我输入了我的服务帐户电子邮件。在该Audience字段中,我输入了我的项目 id,因为在某些时候我收到一条错误,指出它期望它是我的项目 id 的名称。

这是错误:

Firebase ID 令牌的“aud”(受众)声明不正确。预期的"PROJECT_ID"

第 3 步- 运行作业并识别解码令牌:

这是我服务器上的代码:

import * as admin from "firebase-admin";

admin.initializeApp({
  credential: admin.credential.cert(
    // THIS IS THE DEFAULT FIREBASE-ADMIN SERVICE ACCOUNT
    // THAT IS AUTOMATICALLY CREATED BY …
Run Code Online (Sandbox Code Playgroud)

firebase service-accounts google-iam google-cloud-scheduler google-cloud-run

0
推荐指数
1
解决办法
1268
查看次数

如何通过 ssh 连接到 google cloud run 或 appengine?

我知道cloud run和appengine是不同的服务。我需要通过 ssh 连接到应用程序引擎或云运行实例以手动执行某些流程。

使用其中一项服务的原因是它们仅在我使用时收费,而不是 24x7 小时

有办法做到这一点吗?谢谢

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

0
推荐指数
1
解决办法
4355
查看次数

Google Cloud Code 的 Cloud Run 扩展将 Docker 镜像存储在 Cloud Storage 而不是 Artifact Registry

为什么当我使用 Visual Studio Code 扩展“Cloud Code”来部署 Cloud Run 服务时,它似乎将图像内容存储在 Cloud Storage(通过 Container Registry)中。

我可以让它将图像存储在 Google Cloud Artifact Registry 中吗?

google-cloud-platform google-cloud-run google-cloud-code google-artifact-registry

0
推荐指数
1
解决办法
80
查看次数