Hexo是用Nodejs实现的一个静态网站生成器。简单好用,我们可以使用它来生成我们的博客站点。
1. 安装Hexo
首先你必须安装Nodejs环境,如果没有安装的话,请参考其官方文档自行安装。
使用一行命令即可安装Hexo:
1 | $ npm install -g hexo-cli |
2. 生成站点文件
安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。
1 | $ hexo init <dir> |
这里的
blog
。3. 配置Hexo
具体网站配置可以参考这里:https://hexo.io/zh-cn/docs/configuration.html
改成你自己想要的配置。
4. 写文章
你可以执行下列命令来创建一篇新文章。1
$ hexo new [layout] <title>
您可以在命令中指定文章的布局(layout),默认为 post
,可以通过修改 _config.yml
中的 default_layout
参数来指定默认布局。
5. 预览站点
1 | $ hexo server |
会启动服务器。默认情况下,访问网址为: http://localhost:4000/
。
6. 生成静态文件
1 | $ hexo generate |
运行这条命令后会在当前目录下生成一个新的目录public
,在这个目录下会生成网站所有的静态文件,可以使用Nginx、Apache这样的web服务器伺服。我们可以利用Github Pages和Coding Pages提供的免费服务来托管我们的网站,不需要额外的服务器。
7. 创建Github Pages和Coding Pages需要的repo
我们在Github和Coding上分别创建2个repo。Github上面的repo名称是<username>.github.io
; Coding上面的repo名称是<username>.coding.me
。
并且分别开启Pages服务。
Github Pages无需过多设置。Coding Pages需要在代码-〉Pages服务下面打开。
8. 创建网站源文件repo
在Github上为我们的源文件(blog目录)创建一个repo。比如repo名称就叫做blog
。
9. 配置部署所需变量
打开_config.yml
文件,添加如下:
1 | deploy: |
上面的<username>
替换成你自己的用户名即可。
10. 关联到Travis CI
将刚才我们创建的repo添加到Travis CI。
注意开通“Build pushed branches”。
并且添加2个环境变量:CODING_TOKEN
和GH_TOKEN
。
这里的CODING_TOKEN
和GH_TOKEN
分别是coding和Github的access token,生成方法分别见官方文档(https://github.com/settings/tokens, https://coding.net/user/account/setting/tokens),
注意要开通读和写权限。
11. 配置Travis CI
创建.travis.yml
文件,内容如下:
1 | # 指定语言环境 |
上面的CODING_TOKEN
和GH_TOKEN
正是我们配置的环境变量。
12. push本地目录到Github
完成上述步骤之后,只需要将本地目录push到Github仓库即可。接着Travis CI便会生成静态文件并且部署到Github Pages和Coding Pages上。
(PS: 需要先安装hexo-deployer-git
)
在blog
目录:
1 | $ npm install hexo-deployer-git --save |
这样Travis CI就会自动安装hexo-deployer-git
并且成功执行hexo deploy
了。