一、前提条件
·已安装 Node.js。(2020年9月1日起,Serverless 组件不再支持 Node.js10.0 以下版本,请注意升级)
·已安装 Git。
如你未安装上述应用程序,可以参见 Hexo 安装说明。
二、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 HEXO index: index.html # dist: ./dist # hook: npm run build # websitePath: ./ region: ap-guangzhou bucketName: my-bucket protocol: https
配置完成后,文件目录如下:
.├── .serverless└── hexo ├── public ├── … ├── serverless.yml ├── … └── source
四、3. 部署
通过scf deploy命令进行部署,并可以添加–debug参数查看部署过程中的信息。
如你的账号未 登录 或 注册 腾讯云,你可以直接通过微信扫描命令行中的二维码进行授权登录和注册。
$ 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 –debug DEBUG ─ 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
注意:说明: