Serverless极速搭建Hexo博客

更新时间:
复制为 MD 格式

本实验带您如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。

场景简介

本实验将基于函数计算服务搭建一个Hexo博客。使用Serverless Devs命令行工具可以将很多框架、应用、案例一键部署到函数计算平台中。

费用说明

本实验预计1个小时产生费用0.3元。如果您调整了资源规格、使用时长,或执行了本方案以外的操作,可能导致费用发生变化,请以控制台显示的实际价格和最终账单为准。

背景知识

本场景主要涉及以下云产品和服务:

  • 函数计算FC

    函数计算是事件驱动的全托管计算服务。使用函数计算,您无需采购与管理服务器等基础设施,只需编写并上传代码。函数计算为您准备好计算资源,弹性地可靠地运行任务,并提供日志查询、性能监控和报警等功能。函数计算帮助您无需管理服务器(Serverless),仅专注于函数代码就能快速搭建应用。函数计算能够弹性地伸缩,您只需要按使用量付费。

  • 云服务器ECS

    云服务器(Elastic Compute Service,简称ECS)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。一台云服务器ECS实例等同于一台虚拟服务器,内含CPU、内存、操作系统、网络配置、磁盘等基础的组件。云服务器ECS免去了您采购IT硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。阿里云ECS持续提供创新型服务器,解决多种业务需求,助力您的业务发展。

  • Serverless Devs开发者工具

    Serverless Devs是一个组件化与插件化的Serverless开发者平台,开发者可以在平台中可插拔式的使用不同Serverless的服务和框架,同时可参与组件和插件的开发。无论是工业级的Serverless服务,还是各类开源的Serverless框架,Serverless Devs都可友好支持。开发者无需对市面上每一款Serverless工具进行研究和学习,只需通过Serverless Devs,就可以简单、快捷的“上手”主流Serverless服务和框架。

创建实验资源

重要

首次开通函数计算的用户可以领取免费试用额度进行体验,领取方式请查看下一小节内容。

  1. 在实验页面,勾我已阅读并同意《阿里云云起实践平台服务协议》我已授权阿里云云起实践平台创建、读取及释放实操相关资源后,单击开始实操

  2. 创建资源需要5分钟左右的时间,请您耐心等待。

  3. 云产品资源列表,您可以查看本场景涉及的云产品资源信息。

    image

首次开通函数计算用户,可先领取免费额度

说明

如果您是函数计算老用户,请跳过此步骤。

  1. 前往函数计算控制台

    image

  2. 推荐您创建 AliyunFcDefaultRole默认角色对话框中,单击创建

    image

  3. 角色快捷创建页面,单击同意授权

    image

  4. 实验操作面板顶部,单击image图标打开新的标签页,然后在地址栏中输入如下地址并回车,访问免费试用页面。

    https://free.aliyun.com/?spm=a2c6h.29426672.J_5391097900.2.5965729bb9DtAC&productCode=fc

    image

  5. 免费试用页面,找到函数计算FC卡片,单击立即试用

    image

  6. 函数计算FC面板,勾选服务协议,单击立即试用

    说明

    函数计算为首次开通服务的用户提供相应的试用额度,阿里云账户与RAM用户共享此试用额度。试用额度以月为周期,连续提供12个周期,每个周期超出试用额度的部分均会计入按量付费。

    image

安全设置

资源创建完成后,为了保护您阿里云主账号上资源的安全,请您重置云服务器ECS的登录密码、设置安全组端口。

  1. 重置云服务器ECS的登录密码。

    1. 云产品资源列表的ECS云服务器区域,单击管理

      image

    2. 实例详情页签的基本信息区域,单击重置密码

      image

    3. 重置实例密码对话框中,设置新密码确认密码重置密码的方式选择在线重置密码配置SSH密码登录策略选择开启,单击确认修改

      image

      返回如下结果,表示ECS实例root用户的登录密码重置成功。

      image

创建阿里云AccessKey

重要

在本实验完成后,若不再使用,建议参考实验手册步骤及时删除阿里云AccessKey。

  1. 前往AccessKey管理

  2. 不建议使用云账号AccessKey对话框,阅读创建主账号AccessKey的风险,如果必须要创建主账号AccessKey,则勾选我确认知晓云账号AccessKey安全风险,然后单击继续使用云账号AccessKey

    image

  3. AccessKey页面,单击创建AccessKey

    image

  4. 根据界面提示完成安全验证。

  5. 创建云账号AccessKey对话框,再次阅读创建主账号AccessKey的风险及主账号AccessKey使用限制,如果确定要创建主账号AccessKey,则勾选我确认知晓云账号AccessKey安全风险,然后单击继续使用云账号AccessKey

    image

  6. 创建AccessKey对话框,保存AccessKey IDAccessKey Secret,然后勾选我已保存好AccessKey Secret,最后单击确定

    image

安装Serverless Devs命令行工具

  1. 云产品资源列表的ECS云服务器区域,单击远程连接

    image

  2. 登录实例对话框中,输入用户自定义密码,单击确定

    image

  3. 安装Node.js环境。

    1. 执行如下命令,下载Node.js安装包。

      wget https://npmmirror.com/mirrors/node/v14.14.0/node-v14.14.0-linux-x64.tar.xz --no-check-certificate
    2. 执行如下命令,解压安装包并重命名。

      tar -xvf node-v14.14.0-linux-x64.tar.xz && mv node-v14.14.0-linux-x64/ /usr/local/node
    3. 执行如下命令,配置环境变量。

      echo "export PATH=$PATH:/usr/local/node/bin" >> /etc/profile
    4. 执行如下命令,让环境变量生效。

      source /etc/profile
  4. 安装Serverless-Devs工具。

    1. 执行如下命令,安装Serverless-Devs工具。

      npm --registry=https://registry.npmmirror.com install @serverless-devs/s -g

      返回结果如下,表示安装完成。

      image

    2. 执行如下命令,查看版本并检查安装是否正确。

      s -v

      返回结果如下,您可以看到Serverless-Devs工具的版本。

      image

配置阿里云账号信息

  1. 执行如下命令,配置账号信息。

s config add
  1. 然后根据提示填写以下信息。

    • 云厂商:选择Alibaba Cloud(alibaba)。

      image

    • AccessKeyIDAccessKeySecret:请填写您创建的阿里云主账号的AccessKey IDAccessKey Secret,可以在安全信息管理页面查看阿里云主账号的AccessKey IDAccessKey Secret。

      image

    • 创建密钥对别名:直接回车,默认default。

      image

    • (可选)如果显示AccountID auto get failed, please input AccountID manually提示时,您需要手动输入阿里云账号的UID,您可在账户中心查看UID。如果未出现相关提示,可忽略此步骤。

      image

      image

    配置成功后,您将会收到Configuration successful的提示信息,如下图所示。

    image

搭建Hexo博客项目

  1. 执行以下命令,在当前路径初始化一个Hexo项目。

    s init website-hexo -d website-hexo
  2. 选择创建应用所在地域,在本实验中选择为cn-shanghai。

    image

  3. 设置服务名,直接按回车键,使用默认的服务名。

    image

  4. 设置函数名,直接按回车键,使用默认的服务名。

    image

  5. 凭据选择,选择default,然后按回车键。

    image

    返回结果如下,表示Hexo项目初始化成功。

    image

  6. Hexo项目部署到函数计算服务上。

    1. 执行以下命令,进入项目所在目录。

      cd website-hexo
    2. 执行以下命令,部署项目。

      说明

      部署项目大约需要10分钟左右,请您耐心等待。

      s deploy

      返回结果如下,表示项目部署完成,并复制domain后的URL。

      image

  7. 在您的本机浏览器地址栏中,粘贴domain后的URL,访问Hexo博客系统。

    image

接下来您可以自行添加一些主题和插件以丰富您的博客系统。

清理资源

  • 在完成实验后,如果无需继续使用资源,请根据以下步骤,先删除阿里云AccessKey、函数计算,再结束实操。

    • 删除阿里云AccessKey。

      1. 前往AccessKey管理

      2. 不建议使用云账号AccessKey对话框,阅读创建主账号AccessKey的风险,如果必须要创建主账号AccessKey,则勾选我确认知晓云账号AccessKey安全风险,然后单击继续使用云账号AccessKey

        image

      3. AccessKey页面,找到目标AccessKey,单击右侧操作列下的禁用

        image

      4. 禁用对话框中,单击禁用

      5. AccessKey页面,找到目标AccessKey,单击右侧操作列下的删除

        image

      6. 删除对话框中,输入当前AccessKeyID,单击删除

    • 删除函数计算。

      1. 前往函数计算控制台

      2. 在左侧导航栏中,单击函数

        image

      3. 函数页面,找到您部署的函数,选择右侧操作列下的更多 > 删除

        image

      4. 删除函数对话框中,选中我确认要删除以上资源,并同时删除此函数。我已知晓这些资源删除后将无法找回,然后单击删除函数

        image

    • 删除阿里云AccessKey和函数计算后,选择不保留资源,单击结束实操。在结束实操对话框中,单击确定

      image

  • 在完成实验后,如果需要继续使用资源,选择付费保留资源,单击结束实操。在结束实操对话框中,单击确定。请随时关注账户扣费情况,避免发生欠费。

    image