手动部署1个Cloud Run service

什么是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  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/208820.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux-Linux安装JDK及配置环境 及 遇到的问题

下载linux环境对应的JDK的tar.gz包 配置JDK环境:编辑 sudo vim /etc/profile 在文件的最下方,填写 export JAVA_HOME/usr/local/src/software/jdk1.8 export CLASSPATH.:$JAVA_HOME/lib/tools.jar export PATH$JAVA_HOME/bin:$PATH 执行生效命令&…

2024年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-B卷

2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-B卷 2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-B卷A 模块基础设施设置/安全加固(200 分)A-1:登录安全加固(Windows…

电商店铺搬家API接口,轻松搬运淘宝1688京东拼多多等平台全站商品丨商品详情业数据接口丨搜索商品列表数据接口

轻松搬运淘宝、1688、京东、拼多多等平台全站商品的API接口通常是由各平台提供的官方开发工具或第三方工具提供的。 对于淘宝和1688平台,可以使用淘宝开放平台(Open Platform)提供的API接口来访问和操作商品信息。淘宝开放平台提供了丰富的A…

基于通义千问和向量数据构建问答知识库

参考:Java从0到1构建基于ChatGPT向量数据库的检索增强生成模型RAG-02 - 知乎 (zhihu.com) 1、先开通 阿里云的向量检索服务 如何开通向量检索服务并创建API-KEY_向量检索服务-阿里云帮助中心 (aliyun.com) 按流程申请 最后需要申请API-KEY 安装DashVector SDK M…

Windows的常用cmd命令总结

文章目录 一.盘符切换二: cd命令(打开文件/文件夹)三:查看目录四.创建和删除文件夹五.查看本机ip地址六.清除当前屏幕七.复制文件到另一个地方八.移动文件到另一个地方九.删除文件(不能删除文件夹)十.测试网络连接十一.停止任务进程Windows快捷键总结大全…

Linux 文件管理

内容概述 1 文件系统目录结构 存放的是内存中正在运行的系统状态信息,数据不在硬盘而是在内存中 echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all1.1 文件系统的目录结构 Linux 操作系统 ext / xfs 文件系统是区分大小写,大小写敏感 Linux的文件…

RPG项目01_场景及人物动画管理器

基于“RPG项目01_UI登录”,新建一个文件夹名为Model(模型) 将资源场景拖拽至Model中 找到相应场景双击进入 红色报错部分Clear清掉即可,我们可以重做 接下来另存场景 起名为Game 点击保存 场景就保存至Scene中了 在文件夹下新创建…

SpringBoot Bean解析

Bean解析 IOC介绍 松耦合灵活性可维护 注解方式配置Bean 实现方式1: Component声明,直接类上进行添加注解, 同时保证包扫描能扫到即可实现方式2: 配置类中使用Bean Configuration public class BeanConfiguration implements SuperConfiguration{Bean("dog")Ani…

探索云原生时代:技术驱动的业务架构革新

一、引言 在数字化浪潮中,云原生技术已成为推动企业快速创新的重要动力。本文将深入探讨云原生的核心理念、技术架构以及其在实际业务环境中的应用,带领读者深入理解云原生技术的复杂性和优势。 云原生技术的定义 云原生(Cloud Native&…

HarmonyOS脚手架:UI组件之文本和图片

前言 关于HarmonyOS脚手架,本篇是系列的第二篇,主要实现UI组件文本和图片的常见效果查看,本身功能特别的简单,其目的也是很明确,方便大家根据效果查看相关代码实现,可以很方便的进行复制使用,当…

cmake和vscode 下的cmake的使用详解(二)

第四讲: GDB 调试器 前言: GDB(GNU Debugger) 是一个用来 调试 C/C 程序 的功能强大的 调试器 ,是 Linux 系统开发 C/C 最常用的调试器 程序员可以 使用 GDB 来跟踪程序中的错误 ,从而减少程序员的工作量。 Linux 开发 C/C …

CSS——基础选择器、文字控制属性

1、CSS定义 层叠样式表(Cascading Style Sheets,缩写为CSS),是一种 样式表 语言,用来描述 HTML 文档的呈现(美化内容)。 书写位置:title 标签下方添加style双标签,styl…

gitlab高级功能之CI/CD组件 - 实践(二)

上一篇主要讲解了CI/CD组件的原理,看起来稍微有一点枯燥,那么接下来给大家演示下如何使用。 案例 创建一个项目(README.md,template目录) 案例1 step1: 在template中新建yml文件,cat templates/test-st…

externalTrafficPolicy 再探

一 externalTrafficPolicy 属性再探 一次网络不通"争吵"引发的思考 K8s中的external-traffic-policy是什么? 说明: 阿里云的 EDAS 和ACK的默认行为不一样 Kubernetes(二十三)Service(二)会话保持和获取客户端的ip 访问 externalTrafficPolicy 为 L…

用于药物发现的知识图谱

我在GitHub上搜索了一下,发现有一些项目涉及到知识图谱在药物发现领域的应用。 一个项目是 **KDD2023_KaGML_DrugDiscovery_Tutorial**,它是一个关于药物发现的教程,介绍了如何使用知识增强的图机器学习(KaGML)来进行…

springboot+vue志愿者在线报名服务管理系统java毕业设计源码+数据库

vuespringboot志愿服务管理系统 本项目是springbootvueElementuimysql源码 开发工具,idea和eclipse都可以,MySQL 源码下载地址 https://download.csdn.net/download/yibo2022/88401958?spm1003.2166.3001.6637.3https://download.csdn.net/download/yibo2022/884…

2023-12-01 LeetCode每日一题(找出叠涂元素)

2023-12-01每日一题 一、题目编号 2661. 找出叠涂元素二、题目链接 点击跳转到题目位置 三、题目描述 给你一个下标从 0 开始的整数数组 arr 和一个 m x n 的整数 矩阵 mat 。arr 和 mat 都包含范围 [1,m * n] 内的 所有 整数。 从下标 0 开始遍历 arr 中的每…

解决 Idea 下 Tomcat 乱码 问题

解决方案 找了很多的解决方案,但是日志文件和控制台信息只能解决一个,不能兼得,下面给出最佳方案 1.打开 Tomcat 安装目录并找到 conf 文件夹 重启IDEA 即可

SQL练习3

1、创建数据库school,字符集为utf8 mysql> create database school; Query OK, 1 row affected (0.00 sec) mysql> show databases; -------------------- | Database | -------------------- | db1 | | information_schema | | mye…

OpenHarmony 设备启动Logo和启动视频替换指南

前言 OpenHarmony源码版本:4.0release 开发板:DAYU / rk3568 一、Logo替换 替换其中的logo.bmp 和 logo_kernel.bmp文件 注意事项: 1、图片的分辨率需要和设备匹配 2、如果是非首次编译(存在缓存)需要将out目录删…