当我尝试在 Google Cloud Run 中运行容器时收到此错误消息。
type: Ready
status: 'False'
reason: HealthCheckContainerError
message: |-
Cloud Run error: Container failed to start. Failed to start and then listen on the port defined by the PORT environment variable. Logs for this revision might contain more information.
Run Code Online (Sandbox Code Playgroud)
我已经检查了以下内容,但对我没有任何帮助:
我的容器在本地运行,并且正在侦听默认端口,8080并将主机配置为0.0.0.0。
我的 Dockerfile:
FROM node:10
WORKDIR /usr/src/app
ENV PORT 8080
ENV HOST 0.0.0.0
COPY package*.json ./
RUN npm install --only=production
COPY . .
RUN npm run build …Run Code Online (Sandbox Code Playgroud) 假设我运行Cloud RunGoogle 的一项服务。我们还假设有人想要真正伤害您并找出所有 API 路由,或者能够通过向网站发送垃圾邮件来发送大量后期请求。
有一个电子邮件通知,会在您之前设置的某些限制上弹出。
还有没有办法自动切断Cloud Run服务,或者设置暂时离线?我找不到任何好的资源或解决方案。
我不清楚 Vertex AI 模型预测的定价。在文档中,在标题“更多关于预测节点的自动缩放”下提到的要点之一是:
“如果您选择自动缩放,节点数量会自动缩放,并且可以在无流量持续时间内缩小到零”
稍后文档中提供的示例似乎也表明在没有流量的时期,使用零个节点。但是,当我在 Vertex AI 中创建端点时,在“自动缩放”标题下显示:
“自动缩放:如果设置最小值和最大值,计算节点将进行缩放以满足这些边界内的流量需求”
“最小计算节点数”下的值不允许为 0,因此必须输入 1 或更大,并且提到:
默认值为 1。如果设置为 1 或更多,则即使没有流量需求,计算资源也会持续运行。这可能会增加成本,但可以避免由于节点初始化而导致请求丢失。
我的问题是,当我通过将最小值设置为 1、最大值设置为 10 来选择自动缩放时,会发生什么情况。1 个节点是否始终连续运行?或者按照文档的建议,在没有流量的情况下它会缩小到 0 个节点。
为了测试,我部署了一个具有自动缩放功能的端点(最小值和最大值设置为 1),然后当我发送预测请求时,响应几乎是立即的,表明节点已经启动。大约一个小时后,我再次这样做,再次立即得到响应,表明该节点可能永远不会关闭。另外,对于高延迟要求,是否可以自动缩放到 0 个节点(如果这确实可能,甚至是实用的),即,从 0 个节点启动时我们可以期望多少延迟?
google-cloud-platform google-ai-platform google-cloud-vertex-ai
在运行一些云函数时,我有时会收到错误:
"The request was aborted because there was no available instance."
Run Code Online (Sandbox Code Playgroud)
我看到其他问题也出现类似的错误,但对于 Cloud Run,您可以指定可用实例的数量,但 Cloud Function 似乎没有这样的事情。那么如何解决这个问题呢?
我可以在配额页面看到后台功能有限制,但 HTTP 功能没有限制。我通过 HTTP 调用 lambda 函数,它部署在us-central1
我正在尝试将我的 Strapi 应用程序启动到 Google App Engine,我确实部署成功,但我不断在日志中收到此错误:
服务器无法正常启动错误:getaddrinfo EAI_AGAIN /cloudsql/connectionName
错误日志:

我按照部署说明进行操作,但可能缺少某些内容,例如我的应用程序无法与我的 Cloud SQL for MySQL 数据库建立连接。
这是我的 .yaml 文件:
runtime: nodejs12
instance_class: F2
env_variables:
HOST: '0.0.0.0'
NODE_ENV: 'production'
DATABASE_NAME: 'test'
DATABASE_USERNAME: '***'
DATABASE_PASSWORD: '***'
INSTANCE_CONNECTION_NAME: '***'
beta_settings:
cloud_sql_instances: '***'Run Code Online (Sandbox Code Playgroud)
module.exports = ({ env }) => ({
defaultConnection: 'default',
connections: {
default: {
connector: 'bookshelf',
settings: {
client: 'mysql',
host: `/cloudsql/${env('INSTANCE_CONNECTION_NAME')}`,
database: env('DATABASE_NAME'),
username: env('DATABASE_USERNAME'),
password: env('DATABASE_PASSWORD'),
},
},
},
});Run Code Online (Sandbox Code Playgroud)
如果有人知道这一点并可以帮助我,我将不胜感激。
我的应用程序利用Firestore 函数触发器根据 Firestore 中的更改(例如用户配置文件更改)执行后台操作。例如,如果他们更改手机号码,则会发送验证码。
我有一个触发器,它应该在特定集合上发生onWrite()事件时运行。onWrite()在 Firebase 中针对特定集合发生以下任何操作时运行:
在我的用例中,我需要它为onCreate()and运行onUpdate(),因此我使用onWrite()
要使Firebase 触发器正常工作,除了表示已创建/更改/删除的文档的文档 ID/通配符之外,还需要特定格式。
常数:
const collections = {
...
conversations: "conversations",
...
}
Run Code Online (Sandbox Code Playgroud)
可调用函数(更新 firestore):
/**
* Add an conversation to conversations collection
* @type {HttpsFunction & Runnable<any>}
*/
exports.addConversations = functions.https.onCall(async (data, context) => {
// expects conversation & interested state
const {valid, errors} = validateRequiredBody(data, [
"conversation",
]);
if (!valid) {
return { …Run Code Online (Sandbox Code Playgroud) node.js firebase google-cloud-functions google-cloud-firestore
我正在尝试从 Firestore 获取 brews 集合中的文档。
我的代码有什么问题吗?
帮助我熟悉 Flutter 和 Firebase 的人。
////brew list from snapshot
List<Brew> _brewListFromSnapshot(QuerySnapshot snapshot) {
return snapshot.docs.map((document) {
return Brew(
name: document.data()['name'] ?? '',
strenght: document.data()['strength'] ?? 0,
sugars: document.data()['sugars'] ?? '0',
);
}).toList();
}
Run Code Online (Sandbox Code Playgroud)
附上有关错误的屏幕截图:

有没有办法以编程方式从云功能获取运行时服务帐户的电子邮件?
我知道我可以“猜测”默认的 App Engine 帐户(因为它始终是 <project-id>@appspot.gserviceaccount.com),但这不是我想要的。
我期望有一些环境变量或包含此信息的内容,但我找不到任何内容。
我尝试在 MacO 中安装 gcloud 但失败。我尝试了两个 python 版本 3.7.4 和 3.9.1,但都有相同的问题。我怎样才能安装gcloud?我还需要任何其他依赖项吗?
$ python --version
Python 3.9.1
$ sh install.sh --screen-reader=true
Welcome to the Google Cloud SDK!
To help improve the quality of this product, we collect anonymized usage data
and anonymized stacktraces when crashes are encountered; additional information
is available at <https://cloud.google.com/sdk/usage-statistics>. This data is
handled in accordance with our privacy policy
<https://cloud.google.com/terms/cloud-privacy-notice>. You may choose to opt in this
collection now (by choosing 'Y' at the below prompt), …Run Code Online (Sandbox Code Playgroud) 我正在尝试开发我的第一个 Google Cloud Function,但想在本地构建和测试。我以前没有这样做过,我只是在学习,所以请耐心等待。
首先- 我创建了moralisaccount目录,使用默认配置创建了 package.json npm init,并安装了功能框架npm install @google-cloud/functions-framework
AMAC02CLCBTLEE:moralisaccount youthdev$ nvm use node
Now using node v17.3.0 (npm v8.3.0)
AMAC02CLCBTLEE:moralisaccount youthdev$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help init` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg>` afterwards to install a package and
save …Run Code Online (Sandbox Code Playgroud) 我已经gcsfs在我的云功能中使用了一段时间,没有出现任何问题。突然,它停止了新部署的功能,并抛出错误:(
RuntimeError: This class is not fork-safe照片中附有完整的回溯)
我猜这是由于包的依赖项之一造成的gcsfs。无论如何,我已经更新gcsfs到当前版本,但这requirements.txt没有帮助。
可以通过如下定义云函数来重现该错误(Python 3.7):
主要.py:
import gcsfs
# Read in runners and races for end_date
fs = gcsfs.GCSFileSystem(project='project-name-1234')
def try_gcsfs(request):
with fs.open(r'any_csv_file_in_cloud_bucket.csv', 'rb') as f:
lines = []
for line in f:
lines.append(line.decode(errors='ignore'))
print('success')
Run Code Online (Sandbox Code Playgroud)
要求.txt:
gcsfs==2021.10.0
Run Code Online (Sandbox Code Playgroud)
我有一个私人存储库。这个存储库有我的 DAG 的常用功能。(例如:日期时间验证器、响应编码器函数)我想将此存储库的函数导入到我的 DAG 文件中,我使用此链接来执行此操作。
我创建了pip.conf文件。该文件的位置是:my-bucket-name/config/pip/pip.conf并且我在该文件中添加了我的私人 github 存储库,如下所示:
[global]
extra-index-url=https://<token>@github.com/my-private-github-repo.git
Run Code Online (Sandbox Code Playgroud)
之后,我想在我的 dag 文件上导入此存储库的函数(例如:from common-repo import *),但我在我的 DAG 上收到 “模块未找到”错误。(不幸的是,在云作曲家日志中,我看不到任何显示私人 github 存储库已安装的日志。)
我搜索了很多,但找不到如何做到这一点。
今天有一个问题,在我输入答案时被删除了(don\xe2\x80\x99不知道为什么)。由于答案很长,我决定复制/重新创建它并无论如何提供我的答案。也许这对某人有用。
\n这是原来的问题:
\n我们有一个 SFTP 服务器,其中转储 Apache、Nginx、Wordpress 日志。我们希望将这些日志备份到 Cloud Storage,同时解析这些日志的内容并插入 BigQuery 表中。我通常使用 Cloud Functions(NodeJS 或 Python),我首先想到的是云函数作为首选解决方案。
\n但是,Cloud Function 有一个触发器,如果我的目标是让程序持续监视/观察/侦听 SFTP 文件夹中的新文件,则该触发器没有意义。如果我的要求不太严格,我可以按计划触发它,比如每小时触发它来读取 SFTP 文件夹中的新文件。当新文件转储到 Cloud Storage 时,Cloud Functions 也会起作用,触发该函数解析日志文件并将其插入 BigQuery。
\n如果我坚持持续侦听 SFTP 文件夹的要求,您能否建议一个更好的设计解决方案以及我需要组合哪些 GCP 服务(除了 Cloud Storage 和 BigQuery)才能实现这一目标?
\n如果要求不太严格,我的解决方案是否足够好?\nP.S. 我刚刚发现 SFTP 凭据具有只读权限。所以通过添加后缀来重命名文件是没有问题的。我应该使用像 MemoryStore 这样的缓存来记住哪些文件已完成吗?
\nsftp google-cloud-storage google-cloud-platform google-cloud-functions google-cloud-firestore