Cloud Run:托管式无服务器平台 | AI生成和翻译

Home 2026.01

Question: What is an introduction to Cloud Run in Google Cloud Platform (GCP)?

Answer:

Cloud Run 是 Google Cloud 的全托管 Serverless 平台,用于运行容器化的应用程序(或简单的代码/Functions),无需管理任何底层服务器或 Clusters。

一句话核心理念

你只需向 Cloud Run 提供一个容器镜像(Docker),它就会自动处理:

主要变体 (2025–2026)

变体 最适合场景 触发类型 是否支持缩减至零? 是否需要容器? 语言自由度
Cloud Run (services) Web APIs, 网站, Microservices, 后台工作程序 HTTP + gRPC 任意
Cloud Run jobs 批处理 / 一次性 / 定时任务 手动 / Scheduler / Eventarc 否 (运行直至完成) 任意
Cloud Run functions (2nd gen) 轻量化 Functions / 事件驱动代码 HTTP + 多种事件 (Pub/Sub, Storage 等) 否 (仅需源码) 有限 (Node, Python, Go, Java, .NET, Ruby, PHP)

大多数人从 Cloud Run services(旗舰产品)开始。

核心特性

2025–2026 年的典型用例

快速横向对比 (2025 视角)

特性 / 产品 Cloud Run Cloud Functions (2nd gen) GKE Autopilot App Engine flexible
容器自由度 完全 受限 完全 受限
缩减至零
语言支持 任意 有限 任意 有限
HTTP + 事件 最佳事件支持 仅支持 HTTP
运维复杂度 极低 极低 中-高
冷启动时间 良好 极佳 良好

Hello World 部署(2025 年最常见的方式)

# 1. 编写你的应用 (例如: Node.js)
cat > server.js <<'EOF'
const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send(`Hello from Cloud Run! ${new Date()}`);
});

app.listen(process.env.PORT || 8080);
EOF

# 2. 创建 Dockerfile
cat > Dockerfile <<'EOF'
FROM node:20-slim
WORKDIR /app
COPY . .
RUN npm init -y && npm install express
ENV PORT=8080
CMD ["node", "server.js"]
EOF

# 3. 构建并部署 (需要 gcloud CLI 和 Artifact Registry)
gcloud run deploy hello \
  --source . \
  --region asia-southeast1 \
  --allow-unauthenticated

2025 年的一键备选方案:

Cloud Run 依然是 2026 年在 Google Cloud 上运行生产负载最简单、最受欢迎的方式之一。

References:


Back

x-ai/grok-4.1-fast

Donate