手动部署1个Cloud Run service

24 篇文章 0 订阅
3 篇文章 0 订阅
本文介绍了GoogleCloudRun,一种全托管的服务器托管平台,它基于无服务器架构,支持容器化、快速启动、自动扩展和多种编程语言。通过部署Docker镜像,开发者可以轻松构建、部署和扩展应用程序,同时享受安全保障和灵活的资源管理。
摘要由CSDN通过智能技术生成

什么是Cloud Run

来自chatgpt:

Google Cloud Run 是一项全托管的服务器托管平台,它允许您在容器化的环境中运行无服务器应用程序。Cloud Run 提供了一种简单而灵活的方式来构建、部署和扩展应用程序,无需管理底层基础设施。

以下是 Cloud Run 的一些关键特点和功能:

无服务器架构:Cloud Run 是一种无服务器计算平台,您只需要提供应用程序的容器镜像,而无需关注服务器的管理和配置。它会根据请求的负载自动扩展和缩减容器实例的数量,以确保您的应用程序能够处理任意数量的请求。

容器化支持:Cloud Run 使用 Docker 容器来封装和交付应用程序。您可以使用任何支持 Docker 的编程语言和框架来构建应用程序,并将其打包为容器镜像。这使得应用程序的开发、测试和部署变得更加简单和一致。

快速启动时间:Cloud Run 具有快速的启动时间,可以在几秒钟内启动新的容器实例来处理请求。这意味着您的应用程序可以快速响应流量峰值,并在需要时自动扩展容量。

支持自动扩展:Cloud Run 可以根据负载自动扩展容器实例的数量。当请求量增加时,它会自动创建新的容器实例来处理更多的请求。当负载减少时,它会自动缩减容器实例的数量,以节省资源和成本。

事件驱动的计算:Cloud Run 还支持事件驱动的计算模型。您可以将 Cloud Run 与其他 GCP 服务(如 Pub/Sub、Cloud Scheduler、Cloud Storage)集成,以响应事件触发器并执行相应的操作。

支持多种语言和框架:Cloud Run 支持多种编程语言和框架,包括但不限于 Java、Python、Go、Node.js 和 Ruby。您可以选择最适合您的应用程序的语言和框架来开发和部署。

安全和身份验证:Cloud Run 提供了集成的身份验证和授权功能,使您能够保护您的应用程序和数据。您可以配置访问控制策略、使用身份令牌进行认证,并通过 Cloud Identity-Aware Proxy(IAP)实现更精细的访问控制。

总之,Google Cloud Run 提供了一种简单、灵活和可扩展的方式来构建和运行无服务器应用程序。它使开发者能够专注于应用程序的开发和功能,而无需担心底层基础设施的管理和扩展。







第一步 构建docker 镜像

构建1个docker image 在 Google Artifact Repository 上.

参考:
https://e.coding.net/nvd11/Jenkins_lib_java_docker/Jenkins_Libs.git







第二步 打开GCP Console 并进入Cloud Run Create Service 页面

https://console.cloud.google.com/run/create?project=jason-hsbc

自行替换gcp project id

在这里插入图片描述







第三步 选择部署的docker 镜像

如上图, 这里有两个选项

  1. Deploy one revision from existing container image
    这个就是让你再GAR 上选择1个镜像 , 一般是选这个

  2. Continuously deploy new revisions from a source repository
    这个是用CLoud build 去部署某个 github url , 这里不研究







第四步 确定service name

这里自己想怎么写了

当然, 如果已经存在1个同名的cloud run service 是不允许的。 除非你先删除重名的那个service
在这里插入图片描述






第五步 选择region

看你自己怎么选了, 个人建议选择跟其他GCP prodution 相同的region
这里选择大伦敦

在这里插入图片描述







第六步 选择CPU 分配类型

在这里插入图片描述
第一种是只在你的service 被请求时cpu才活动, 第2种是完全占用cpu, 这里省钱选择第一种







第七步 配置auto scale

在这里插入图片描述
配置就是这么简单!
最小选择0, 但是当一段时间没有负载的话, GCP甚至会将你的service 关机, 所以在生产上选择1, 避免冷启动!







第八步 配置访问控制

在这里插入图片描述

第一种是内部访问, 必须经过VPC SC 控制。
第二种是允许外网访问, 这里选择2







第九步 配置权限验证方法

在这里插入图片描述

第一种是无需任何验证, 但是这种方法被公司紧选了(组织策略)
第二种是用GCP IAM 管理, 就是需要用idenity token 去call







第十步 配置镜像启动参数

在这里插入图片描述

主要是包括 容器的端口要正确, 然后可以配置cpu 和内存大小
最后配置一下用什么gcp service account去启动这个容器
在这里插入图片描述







第十一步 按下上面的CREATE Button

当然其实还有很多参数可以配置, 例如网络等, 这里不深究,保持默认。

然后等待service 部署成功即可, 如果有错误需要检查日志
在这里插入图片描述







第十二步 测试service

上图右上 已经给出了这个service 的api
下面是测试命令和结果

 curl -H "Authorization: Bearer $(gcloud auth print-identity-token)" https://helloservice2-7hq3m4pdya-nw.a.run.app/api/hello
Hello, Jason!%                                                                                                                                                                                         ~/scripts  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nvd11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值