诚心求问:做一个 Serverless SSR 需要几步?
很久之前,看到过一个段子:“把大象塞进冰箱需要几步?” 回答是:“三步,第一步打开冰箱,第二步把大象塞进去,第三步关上冰箱”。这是一个无厘头式的幽默,用极简平淡的回答,来解释看似夸张的问题。
做一个 Serverless SSR 虽然不是把大象装进冰箱这样的问题,但是同样让很多开发者望而生畏 —— 因为网上关于 SSR 和 Serverless 的教程太多,动辄很大篇幅,很多步骤。让初学者无从下手,就算照着学一遍,也可能会遇到这样那样的问题,很费功夫。
但是现在,开发者可以有一种 “冰箱装大象” 的方式来完成一个 Serverless SSR:
- 你需要有一个 SSR 框架 :Next.js
- 你需要有一个 Serverless 框架 :Serverless Framework
然后,只要将你的 SSR 框架一步装入 Serverless Framework!
跟着我一起做吧,几分钟完成一个 Serverless SSR 的模式:
首先,你需要有一个 SSR 框架,下面我们创建并初始化一个 Next.js
项目。
我们在本地创建一个 Next.js
项目并初始化:
$ mkdir serverless-next && cd serverless-next $ npm init next-app src
然后,你需要有一个 Serverless 框架,下面的代码将通过 npm 全局安装 serverless cli
$ npm install -g serverless
在项目根目录创建 serverless.yml
文件:
$ touch serverless.yml
在其中进行如下配置:
component: nextjs # (必填) 组件名称,此处为nextjs name: nextjsDemo # (必填) 实例名称 org: orgDemo # (可选) 用于记录组织信息,默认值为您的腾讯云账户 appid app: appDemo # (可选) 该 next.js 应用名称 stage: dev # (可选) 用于区分环境信息,默认值是 dev inputs: src: ./src functionName: nextjsDemo region: ap-guangzhou runtime: Nodejs10.15 exclude: - .env apigatewayConf: protocols: - http - https environment: release
更多配置说明:
https://github.com/serverless-components/tencent-nextjs/blob/v2/docs/configure.md
最后,将你的 SSR 框架装入 Serverless 框架,并部署
$ npm run build
在 serverless.yml 文件下的目录中运行以下指令进行部署:
$ sls deploy
执行部署完成后,扫描二维码授权登录腾讯云
部署成功后,命令行会输出 Next.js 的部署地址(见红框)。将其复制到浏览器中打开,我们会看到 Next.js 的欢迎页面。到这里,你就成功部署了 Serverless SSR!
查看和管理你的 SSR 项目
刚才的步骤,我们完成了 Next.js 框架的 Serverless 方式部署。那么,如何查看和管理刚才部署的 Next.js 项目呢?
腾讯云 Serverless 提供了一站式的 Dashboard,可以方便地对项目进行可视化的管理和后续操作。访问地址:https://serverless.cloud.tencent.com
可以看到,我们刚才部署的 Next.js 项目,已经出现在 Dashboard 中了。点击该项目,即可查看到该项目的详细信息,并进行后续的操作。
以上,就是使用 Serverless Framework 轻松部署 SSR 框架 Next.js 的全部过程。不仅是 Next.js,包括 Express、Koa、Egg、Nuxt 等 Node 框架,都可以用同样的方法轻松完成部署。
Serverless Framework 30 天试用计划
我们诚邀您来体验最便捷的 Serverless 开发和部署方式。在试用期内,相关联的产品及服务均提供免费资源和专业的技术支持,帮助您的业务快速、便捷地实现 Serverless!
One More Thing
3 秒你能做什么?喝一口水,看一封邮件,还是 —— 部署一个完整的 Serverless 应用?
复制链接至 PC 浏览器访问:https://serverless.cloud.tencent.com/deploy/express
3 秒极速部署,立即体验史上最快的 Serverless HTTP 实战开发!
传送门:
- GitHub: github.com/serverless
- 官网:serverless.com
欢迎访问:Serverless 中文网,您可以在 最佳实践 里体验更多关于 Serverless 应用的开发!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
社区首款 OAM 可视化平台发布!关注点分离、用户友好、上手难度低
作者 |徐运元,杭州谐云科技合伙人及资深架构师,云计算行业和 Kubernetes 生态资深从业者 **导读:**什么是 OAM?2019 年 10 月 17 日,阿里巴巴合伙人、阿里云智能基础产品事业部总经理蒋江伟(花名:小邪)在 QCon 上海 2019 重磅宣布,阿里云与微软联合推出开放应用模型 Open Application Model (OAM)开源项目。 OAM 的核心关注点 **关注点分离:**开发者关注应用本身,运维人员关注模块化运维能力,让应用管理变得更轻松、应用交付变得更可控; **平台无关与高可扩展:**应用定义与平台层实现解耦,应用描述支持任意扩展和跨环境实现; **模块化应用运维特征:**可以自由组合和支持模块化实现的运维特征描述。 OAM 的核心模块 1. 应用组件(Components) 在 OAM 中,“应用”是由多个概念共同组合而成。第一个概念是:应用组件(Components),它是整个应用的重要组成部分。应用组件既可以包括应用运行所依赖的服务:比如 MySQL 数据库,也包括应用服务本身:比如拥有多个副本的 PHP 服务器。开发者可以把他们写的代...
- 下一篇
Deno 正式发布,彻底弄明白和 node 的区别
前言 Deno 已经正式发布了🎉! 我说这句话时候,是不是很多前端 和 NodeJS 工(码)程(农)师已经按不住自己的40米大刀了。心中的不仅感慨前端是真的会造轮子,有了 node 还不够吗,还没学会 node 又搞了个 deno,node 和 deno 啥区别?! 的确,deno 和 node 形态很相似,要解决的问题似乎也相同,那他们到底有啥区别,这一切究竟是道德的沦丧还是 ry (作者)人性的扭曲,让我们走进本篇文章,一探究竟。 Deno VS Node Node Deno API 引用方式 模块导入 全局对象 模块系统 CommonJS & 新版 node 实验性 ES Module ES Module 浏览器实现 安全 无安全限制 默认安全 Typescript 第三方,如通过 ts-node 支持 原生支持 包管理 npm + node_modules 原生支持 异步操作 回调 Promise 包分发 中心化 npmjs.com 去中心化 import url 入口 package.json 配置 import url 直接引入 打包、测试、格式化 第三方如 e...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- Hadoop3单机部署,实现最简伪集群
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16