快速迁移 Next.js 应用到函数计算

首先介绍下在本文出现的几个比较重要的概念:

函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。函数计算更多信息 参考。
Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API 网关、日志服务等资源。它通过一个资源配置文件(template.yml),协助您进行开发、构建、部署操作。Fun 的更多文档 参考。

备注: 本文介绍的技巧需要 Fun 版本大于等于 3.6.3。

背景

Next.js 是一种 React 的服务端渲染框架,且 Next.js 集成度极高,框架自身集成了 webpack、babel、express 等,使得开发者可以仅依赖 Next、react、react-dom 就可以非常方便的构建自己的 SSR React 应用,开发者甚至都不用像以前那样关心路由。
Next.js 的高度集成性,使得我们很容易就能实现代码分割、路由跳转、热更新以及服务端渲染和前端渲染。

环境准备

首先按照 Fun 的 安装文档 里介绍的方法将 Fun 安装到本机。
PS: 本文介绍的方法,不需要安装 Docker,仅仅安装 Fun 即可,最简单的方式就是直接下载可执行的二进制文件。
安装完成后,可以执行 fun --version 检查 Fun 是否安装成功。

快速开始

  1. 创建一个 Next 项目,这里以 nextjs 为例:

    npm init next-app
  2. 进入到刚刚创建的示例项目中:

    cd nextjs
  3. 本地运行测试该示例:

    npm run dev 或者 yarn dev

    效果如下:20200313103411.jpg

  4. 编译 nextjs 项目:

    npm run build
  5. 部署项目到函数计算:
    仅需要一个命令 fun deploy,Fun 会自动进入部署流程,在该流程中,用户仅仅需要按下一系列的回车即可。流程细节如下:

    1. Fun 检测到这不是一个 Fun 项目,会提示协助创建(直接回车或者输入 y 即可):
      1584068254790_8f53c8aa_bcb5_4f91_9160_a028bbb9b13a_jpeg
    2. Fun 项目自动创建成功,提示是否进行部署?可以直接回车,或者输入 y 进行确认
      20200313111040.jpg
    3. 然后 Fun 会直接将应用部署到线上了:
      1584069191767_2e544c50_a331_4dc3_9b45_f260f6447801_jpeg

    部署完成后,我们可以根据部署成功的日志看到,函数计算为我们生成了临时域名 14069166-1986114430573743.test.functioncompute.com,我们可以通过这个临时域名直接访问我们刚刚部署的应用。
    注意:临时域名仅仅用作演示以及开发,是有时效的,如果用作生产,请绑定已经备案的域名,绑定自定义域名可以参考 详情

总结

本文主要介绍了如何将 Next.js 应用部署到函数计算。相比较与传统的部署方法,不仅没有更复杂,还省略了购买机器等步骤。实现,将传统的 Next.js 应用在本地开发完成后,一键部署到远端直接用于生产,并拥有了弹性伸缩、按量付费、免运维等特性。

原文链接
本文为云栖社区原创内容,未经允许不得转载。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么字节跳动、腾讯、阿里都在用Python??

Python 作为一种解释型技术脚本语言,越来越被认可为程序员新时代的风口语言。 无论是刚入门的程序员,还是年薪百万的 BATJ 的技术大牛都无可否认:Python的应用能力是成为一名码农大神的必要项。 而作为Python初学者来讲,最大的问题…

Need to upgrade docker package to 17.06.0+. Docker升级到最新版本

文章目录1. 现象2. 查找3. 在线卸载4. 升级docker5. 重启Docker6. 设置Docker开机自启7. 查看版本背景: 在搭建docker私有仓库的时候出现以下错误,版本太低 1. 现象 Need to upgrade docker package to 17.06.0.2. 查找 查找主机上关于Docker的软件包 …

云数据库RDS基础版的优势及适用场景

云栖号快速入门:【点击查看更多云产品快速入门】 不知道怎么入门?这里分分钟解决新手入门等基础问题,可快速完成产品配置操作! 阿里云的产品系列包括基础版、高可用版、集群版、三节点企业版,本文介绍基础版的相关信息…

全方位事件监控管理,阿里云日志服务Kubernetes事件中心正式上线

2020年2月21日,阿里云日志服务Kubernetes事件中心正式上线,为Kubernetes事件提供集中化采集、存储、分析、可视化、告警等能力,帮助Kubernetes使用者快速构建准实时、高可靠、全方位的事件监控管理。 据介绍,Kubernetes事件中心能…

docker Harbor2.3.4 http 搭建镜像仓库

文章目录一、环境准备1. 环境要求2. 节点总览3. 安装docker-compose二、安装harbor2.1. 下载2.2. 解压2.3. 调整配置2.5. 安装 harbor2.6. 效果验证三、Docker开启远程API3.1. 修改配置3.2. 支持http3.3. 重新启动Docker服务3.4. 防火墙管理3.5. 重新启动3.6. 监控状态四、测试…

下一代 IDE:Eclipse Che 究竟有什么奥秘?

来源 | CSDN(ID:CSDNnews)Eclipse Che被Eclipse官方称为下一代IDE,作为老牌的IDE,被其寄予厚望的Eclipse Che到底有什么特点,在这篇文章中我们来一探究竟。开发团队的Kuberentes原生IDEEclipse Che对开发团…

助力在线教育,阿里云推出百万专项扶持基金计划

云栖号:https://yqh.aliyun.com 第一手的上云资讯,不同行业精选的上云企业案例库,基于众多成功案例萃取而成的最佳实践,助力您上云决策! 前话 提供一个思路帮助你了解区块链基础运作,文本并不是一个完整的…

【开发者成长】阿里代码缺陷检测探索与实践

目前PRECFIX技术已经在阿里巴巴集团内部落地并获得好评;关于“PRECFIX”技术的论文被国际软件工程大会(ICSE)收录。 张昕东(别象) 阿里巴巴 云研发事业部 算法工程师 【以下为别象分享实录】 阿里巴巴在缺陷检测技术方面遇到的三个挑战 编码…

docker Harbor2.3.4 https 搭建镜像仓库

文章目录一、环境准备1. 环境要求2. 节点总览3. 安装docker-compose二、安装harbor2.1. 下载2.2. 解压2.3. 认证2.4. 调整配置2.5. 安装 harbor2.6. 配置host2.7. 效果验证三、客户端3.1. 证书保存3.2. 新建配置3.3. 登录harbor四、基本操作4.1. 下线4.2. 监控状态4.3. 重新部署…

OPPO实时数仓揭秘:从顶层设计实现离线与实时的平滑迁移

一、建设背景 关于 OPPO 移动互联网业务 大家都认为 OPPO 是一家手机公司,但大家可能并不清楚,其实 OPPO 也会做与移动互联网相关的业务。在 2019 年 12 月,OPPO 发布了自己定制的手机操作系统 ColorOS 7.0 版本。目前包括海外市场在内&…

十年技术骨干面试被开出一万五薪资,直呼 “这是对我的侮辱”

老周是我十多年前认识的同事,2012年前后,老周到北京工作的第一个任务就是为公司的产品开发IOS APP。2012年底,老周已经能熟练的驾驭苹果的cocoatouch和android核心组件。也正因为如此,老周的薪水直接翻倍,当时已经拿到…

微信小程序---实现弹窗效果

第一步&#xff1a;点击按钮触发弹窗事件 <button class"btn" bindtap"btn">按钮</button> *** css样式 .btn{ position: fixed; bottom: 0; left: 0; } *** js btn(){ let delshow !this.data.delshow console.log(delshow) this.setD…

登录 Harbor response from daemon: Get “https://192.168.92.129/v2/“: x509: cannot validate certificate

文章目录1. 现象2. 解决方案3. 重新登陆1. 现象 [rootlocalhost harbor]# docker login 192.168.92.129 Username: admin Password: Error response from daemon: Get "https://192.168.92.129/v2/": x509: cannot validate certificate for 192.168.92.129 becaus…

基于Flink的超大规模在线实时反欺诈系统的建设与实践

作者&#xff1a;关贺宇 在大数据时代&#xff0c;金融科技公司通常借助消费数据来综合评估用户的信用和还款能力。这个过程中&#xff0c;某些中介机构会搜集大量的号并进行“养号”工作&#xff0c;即在一年周期里让这些号形成正常的消费、通讯记录&#xff0c;目的是将这些…

别再被 Python 洗脑了!!

Python 作为一种解释型技术脚本语言&#xff0c;越来越被认可为程序员新时代的风口语言。无论是刚入门的程序员&#xff0c;还是年薪百万的 BATJ 的技术大牛都无可否认&#xff1a;Python的应用能力是成为一名码农大神的必要项。 而作为Python初学者来讲&#xff0c;最大的问题…

任务不再等待!玩转DataWorks资源组

引言 DataWorks提供了三种资源组的能力&#xff1a;独享资源组、自定义资源组和默认资源组&#xff0c;很多开发者在使用资源组时经常会碰到各类情况&#xff0c;到时候任务运行失败或者延迟&#xff0c;例如&#xff1a;1. 正在使用默认资源组&#xff0c;任务经常要等待2.购…

微信小程序---实现输入手机验证码功能

*** html部分 <view classcontainer> <view classmain-title bindtap"test"> 输入短信验证码 </view> <view class"sub-title"> 已向<text class"phone">139****9999</text>发送验证码 </view> <…

Docker Harbor 2.3.4 集群 双主复制高可用镜像仓库

下面操作大部分是双节点同时执行一样的命令&#xff0c;不同的地方我会进行标注和特殊说明 文章目录一、环境准备1. 环境要求2. 节点总览3. 安装docker-compose二、安装harbor2.1. 下载2.2. 解压2.3. 调整配置2.4. 安装 harbor2.5. 效果验证三、Docker开启远程API3.1. 修改配置…

如何用Chrome读懂网站监测Cookie

作者 | 朱顺意责编 | 李雪敬出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;网站监测工具用于标识用户的 Cookie 分为第1方 Cookie 和第3方 Cookie&#xff0c;这两者本质上没有什么区别&#xff0c;只是身份不同。Cookie 有 Domain 属性&#xff0c;当 Coo…

DataWorks百问百答01:数据同步该用什么资源组

引子 很多用户在使用数据集成建立同步任务时&#xff0c;往往都会困惑一个设置&#xff0c;即“资源组设置”。 大家常有的疑问是“资源组是用来做什么的&#xff1f;跟网络之间什么关系&#xff1f;我该选择那种资源组&#xff1f;” 下面本文给您一个简要的介绍。 什么是资源…