TAT.heyli 印记中文推出文档 CDN + COS 部署方案
In 未分类 on 2017年08月30日 by view: 3,638
0

简介

印记中文的成立主要是为了协助社区更好地翻译与部署文档。最近联合腾讯云一起设计了一套有效提升访问速度及降低流量消耗成本的方案,即 COS 对象存储服务 及 CDN 加速方案。本文主要描述方案大体的实现过程,如果你是技术文档的管理者,苦于没有优秀的文档部署方案,可以联系印记中文 (docschina),我们会提供接入服务。如果你遇到性能问题,我们也可以提供免费的技术咨询服务

** QQ 群:492361223 **

也可以关注我们的公众号:

官网:docschina.org

代码存放及 CI 构建

一般而言,对公有代码,一般采用 Github + Travis-CI 存放及构建方式。而对于私有代码来说,则会直接使用 Bitbucket + Pipeline (Bitbucket 自有的构建服务)。(点击以下标题展开详细内容)

Github + Travis-CI

自动构建与部署服务的架构如下图:

Sample process

在代码仓库方面,我们需要两个分支,一个是 master 分支,用于存放文档源码,另一个是 gh-pages 分支,用于存放生成的文档文件。

然后,我们需要配置 .travis.yml 文件,用于 Travis-CI 构建和部署我们的项目,下面是求全配置,表示仅在在 master 分支有 push 或者 pull request 事件的时候,才会触发构建,使用语言是 node.js,版本是 6.x,首先运行完安装依赖的 npm install 之后,再运行 bash ./scripts/deploy.sh

那么 ./scripts/deploy.sh 脚本中,主要就是承担构建、鉴权,以及代码推送的功能。

那第二部份的 ssh key 怎么生成呢?其实整个 github 的鉴权原理不难,用工具成生 ssh key 公钥与私钥,然后将公钥存放到 github 的 repository 中,将私钥存放到代码库中,在 Travis-CI 推送代码之前添加私钥,那么推送的时候就可以顺利鉴权成功。

那具体怎么生成 ssh key 呢,具体可以参考这个文档 Generating a new SSH key to generate SSH Key

然后,到你的文档本地代码仓库键入以下示例命令: