操作场景
该任务指导您通过 Serverless Website 组件,快速构建一个 Serverless Hexo 站点。
前提条件
已安装 Node.js。(2020年9月1日起,Serverless 组件不再支持 Node.js10.0 以下版本,请注意升级)
已安装 Git。
操作步骤
1. 安装
1. 通过 npm 安装最新版本的 Serverless Cloud Framework,详情请参见 安装 Serverless Cloud Framework。
2. 通过 npm 安装 Hexo:
$ npm install -g hexo-cli
3. 安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。
$ hexo init hexo # 生成 Hexo 目录$ cd hexo$ npm install
新建完成后,指定文件夹的目录如下:
.├── _config.yml├── package.json├── scaffolds├── source| ├── _drafts| └── _posts└── themes
4. 安装完成后,可以通过
hexo g
命令生成静态页面:$ hexo g # generate
说明:
如果希望在本地查看效果,也可以运行下列命令,通过浏览器访问
localhost:4000
查看页面效果。$ hexo s # server
2. 配置
在
hexo
目录下,创建serverless.yml
文件:$ touch serverless.yml
在
serverless.yml
文件中进行如下配置:# serverless.ymlcomponent: website # (必填) 引用 component 的名称,当前用到的是 tencent-website 组件name: hexodemo # (必填) 该 website 组件创建的实例名称app: websiteApp # (可选) 该 website 应用名称stage: dev # (可选) 用于区分环境信息,默认值是 devinputs:src:src: ./public # Upload static files generated by HEXOindex: index.html# dist: ./dist# hook: npm run build# websitePath: ./region: ap-guangzhoubucketName: my-bucketprotocol: https
配置完成后,文件目录如下:
.├── .serverless└── hexo├── public├── ...├── serverless.yml├── ...└── source
3. 部署
$ scf deployserverless-cloud-frameworkAction: "deploy" - Stage: "dev" - App: "websiteApp" - Instance: "hexodemo"region: ap-guangzhouwebsite: https://my-bucket-1258834142.cos-website.ap-guangzhou.myqcloud.com25s › hexodemo › Success
访问命令行输出的 Website URL,即可查看您的 Serverless Hexo 站点。
注意:
如果希望更新 Hexo 站点中的文章,需要在本地重新运行
hexo g
进行生成静态页面,再运行serverless
更新到页面。4. 移除
通过以下命令移除 Hexo 网站:
注意:
在 serverless.yml 文件所在的目录下,通过以下命令移除部署的静态网站 Website 服务。移除该应用时,只删除云函数相关的配置、代码。关联的其他云资源(如 COS、CLS 等),平台均不会关联删除,您可以前往对应产品控制台删除,避免不必要的计费。
$ scf remove --debugDEBUG ─ Flushing template state and removing all components.DEBUG ─ Starting Website Removal.DEBUG ─ Removing Website bucket.DEBUG ─ Removing files from the "my-bucket-1250000000" bucket.DEBUG ─ Removing "my-bucket-1250000000" bucket from the "ap-guangzhou" region.DEBUG ─ "my-bucket-1250000000" bucket was successfully removed from the "ap-guangzhou" region.DEBUG ─ Finished Website Removal.6s » myWebsite » done
账号配置(可选)
当前默认支持 CLI 扫描二维码登录,如您希望配置持久的环境变量/密钥信息,也可以本地创建
.env
文件:$ touch .env # 腾讯云的配置信息
在
.env
文件中配置腾讯云的 SecretId 和 SecretKey 信息并保存:# .envTENCENT_SECRET_ID=123TENCENT_SECRET_KEY=123