首先我们来介绍下,Wintersmith 是一个简单而灵活的静态站点生成器。采用 markdown 构建,这个是我们的基础条件。

  • Serverless Framework:在 GitHub 上有三万颗星,业界非常受欢迎的无服务器应用框架,开发者无需关心底层资源即可部署完整可用的 Serverless 应用架构。

确保系统包含以下环境:

  • Node.js (Node.js 版本需不低于 8.6,建议使用 10.0 及以上版本)

这边有详细的视频演示大家也可以直接观看:

1. 安装 Serverless Framework

$ npm install -g serverless

2. 安装 wintersmith

$ npm i wintersmith -g

3. 新建 wintersmith 项目

可对指定路径进行安装

$ wintersmith new <path>

初始化成功后,可以看到路径下创建的项目文件

4. 本地预览

运行以下命令,并通过浏览器访问 http://localhost:8080 即可方便地预览效果,而且提供 LiveReload 功能,可以实时预览。

$ wintersmith preview

使用如下命令构建网站:

$ wintersmith build

5. 配置 yml 文件

在项目目录下,创建 serverless.yml 文件:

$ touch serverless.yml

将以下内容写入上述的 yml 文件里:

# serverless.yml

myWebsite:
component: '@serverless/tencent-website'
inputs:
code:
src: ./build
index: index.html
error: index.html
region: ap-guangzhou
bucketName: my-bucket

配置完成后,文件目录如下:

.
├── build
| ├── index.html
| └── README.md
└── serverless.yml

6. 部署

通过 sls 命令进行部署,这里还可以添加 –debug 参数来查看部署过程中的信息:

$ sls --debug

如您的账号未登陆注册腾讯云,您可以直接通过微信扫描命令行中的二维码进行授权登陆和注册,从而进行授权登陆和注册。这也是我觉得特别方便的一个地方!

部署过程中,terminal 显示信息示意:

访问命令行输出的 url,即可查看使用 Serverless Framework 部署的网站啦~

7. 小结

本文使用了腾讯云的无服务器框架 Serverless Framework 来搭建  Wintersmith 博客系统。

虽然这只是一个非常简单的示例,但是不难看出,Serverless Framework 在快速部署方面的强大能力。比如集成了微信扫描二维码,就直接让我们避开了繁琐的云服务的账号注册、配置的环节。而你需要做的,只是根据 Wintersmith 自身的能力,进行网站的定制。

传送门:

欢迎访问:Serverless 中文网,您可以在 最佳实践 里体验更多关于 Serverless 应用的开发!

使用 Wintersmith + Serverless Framework 快速创建个人站点的更多相关文章

  1. 三分钟入坑指北 🔜 Docsify + Serverless Framework 快速创建个人博客系统

    之前由于学摄影的关系,为了提高自己的审美,顺便锻炼下自己的英文能力,翻译了不少国外艺术类的 文章.最近一直想搭一个个人博客来存放这些内容,又懒得折腾建站,遂一直搁置. 直到偶然发现了 docsify ...

  2. Laravel + Serverless Framework 快速创建 CMS 内容管理系统

    今天,为大家带来一篇 Laravel + Serverless Framework 的综合实战,里面信息量有点多,大家仔细看哦- 首先,我来介绍下主要的本地环境吧: Git:不多说,只要会敲代码就应该 ...

  3. 快速创建IIS站点并设置权限

     net user WebSiteUser WebSiteUserWebSiteUser /add /yWMIC Path Win32_UserAccount Where Name="Web ...

  4. (视频) 《快速创建网站》 3.2 WordPress多站点及Azure在线代码编辑器 - 扔掉你的ftp工具吧,修改代码全部云端搞定

    本文是<快速创建网站>系列的第6篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...

  5. (视频) 《快速创建网站》 3.2 WordPress多站点及Azure在线编辑器 - 扔掉你的ftp工具吧,修改代码全部云端搞定

    本文是<快速创建网站>系列的第6篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 1. 网站管理平台WordPress和云计算平台Azure简介 (6分 ...

  6. Hexo + Serverless Framework,简单三步搭建你的个人博客

    很多人都想拥有自己的个人博客,还得看起来漂亮.酷酷的.尤其对开发者来说,不仅可以分享技术(装)心得(逼),面试的时候还能成为加分.这里介绍两款好用的神器,不用忙前(前端)忙后(后端),简单3min即可 ...

  7. AWS Lambda 借助 Serverless Framework,迅速起飞

    前言 微服务架构有别于传统的单体式应用方案,我们可将单体应用拆分成多个核心功能.每个功能都被称为一项服务,可以单独构建和部署,这意味着各项服务在工作时不会互相影响 这种设计理念被进一步应用,就变成了无 ...

  8. (视频)《快速创建网站》 4.2 完结篇 – 应用运营vs.发射卫星,遥测(Telemetry) 技术

    本文是<快速创建网站>系列的第10篇(完结篇),如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文.访问本系列目录,请点击:http://devopshub.c ...

  9. (视频)《快速创建网站》 4.1 为啥造软件不同于造汽车,为啥是软件就一定会有Bug - 构建开发运维一体化(DevOps)

    本文是<快速创建网站>系列的第9篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...

随机推荐

  1. POJ 1260:Pearls 珍珠DP

    Pearls Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7947   Accepted: 3949 Descriptio ...

  2. c++ 模板联系4

    //定义类成员函数特化类型 #include "stdafx.h" #include <iostream> using namespace std; typedef f ...

  3. 运行xv6

    我们使用Qemu在Ubuntu下运行 1. 安装Qemu sudo apt-get install qemu 执行 qemu-system-i386 ,如果弹出Qemu界面说明安装成功了 2. 编译x ...

  4. i春秋-web- 爆破2

    题目:flag不在变量中. 打开链接: <?php include "flag.php"; $a = @$_REQUEST['hello']; eval( "var ...

  5. 吴裕雄--天生自然 JAVASCRIPT开发学习:函数调用

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  6. 关于PHP索引数组unset某key后json_encode相关问题踩坑记录

    <?php $a = [1,2,3]; var_dump(json_encode($a)); #string(7) "[1,2,3]" unset($a[0]); var_d ...

  7. CPU构架和工作原理

    -- CPU -- -- CPU 由三部分组成:时钟:控制单元:算术逻辑单元 -- -- -- 时钟:对CPU内部操作与系统其他硬件进行同步: -- -- -- 控制单元:控制机器指令的执行顺序: - ...

  8. IOS下的safari不支持localStorage?

    同事在统计日志的时候,想用localStorag去记载一些什么,但是在各大浏览器都运行的良好的基础上,唯独IOS下的safari一直静静无声,没有任何反应.打印localStorage都是Object ...

  9. Jetson TX2入门学习之Ubuntu默认密码

    在使用TX2开发板时进行软件更新时需要身份验证,TX2默认有两个登录身份,一个是ubuntu 一个是nvidia 登录其中的哪一个都可以更新   两个身份的密码和登录名是一样的用户:ubuntu 密码 ...

  10. Linux--Shell传递参数

    参考:http://www.runoob.com/linux/linux-shell-passing-arguments.html