首先我们来介绍下,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. JAVA中汉字的Compare排序

    当调用String.compare方法的时候,比较的是Unicode码,并不能对汉字进行准确的排序,所以汉字比较时会出现比较混乱的结果. java.text.Collator类中有一个getInsta ...

  2. ORACLE常见问题收集

    1.Java代码执行oracle,update和insert语句卡住不动 解决方法:造成这样的情况原因在于你之前执行了update或insert操作但你并没有commit,导致你操作的这条记录被ora ...

  3. Python笔记_第五篇_Python数据分析基础教程_文件的读写

    1. 读写文件(基本) savetxt.loadtxt i2 = np.eye(2) print(i2) np.savetxt(r"C:\Users\Thomas\Desktop\eye.t ...

  4. python进阶(三)~~~装饰器和闭包

    一.闭包 满足条件: 1. 函数内嵌套一个函数: 2.外层函数的返回值是内层函数的函数名: 3.内层嵌套函数对外部作用域有一个非全局变量的引用: def func(): print("=== ...

  5. 在java中如何根据手机号查询号码归属地

    1.maven项目中配置 <dependency><groupId>com.googlecode.libphonenumber</groupId><artif ...

  6. nodejs(15)express开启cors跨域

    express开启cors跨域 package.json "dependencies": { "body-parser": "^1.18.3" ...

  7. PAT Advanced 1135 Is It A Red-Black Tree (30) [红⿊树]

    题目 There is a kind of balanced binary search tree named red-black tree in the data structure. It has ...

  8. 1月18日 LCA专项训练

    A. Lorenzo Von Matterhorn B.Minimum spanning tree for each edge C.Misha, Grisha and Underground D.Fo ...

  9. lemon

    这本是一个技术博客网站 我却用来记录关于六月 就好像特别才不配你的特别一样 就好像以后要特别喜欢cos一样 就好像再特别的六月也会过渡到七月一样

  10. 元祖&字典

    #什么是元祖:元祖是一个不可变的列表(没有改的需求) #======================================基本使用============================== ...