Ubuntu部署hexo博客系统

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。



安装前提

安装Git:

$ sudo apt-get install git-core

安装Node.js

安装Node.js的最佳方法是使用nvm

Wget:

$ wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh

安装完成后,重启终端并执行下列命令即可安装Node.js

$ nvm install <version>

安装Hexo

所有必备的应用程序安装完成后,即可使用npm安装Hexo。

$ npm install -g hexo-cli

建站

安装Hexo完成后,请执行以下命令,Hexo将会在指定的文件夹中新建所需要的文件

$ hexo init <floder>
$ cd <floder>
$ npm install

文件目录结构如下:

.
├── _config.yml
├── package.json
├── scaffolds
├── source
| ├── _drafts
| └── _posts
└── themes


_config.yml
网站的配置信息。
package.json
应用程序的信息。
scaffolds
模板文件夹。当您新建文章时,Hexo 会根据 scaffold 来建立文件。
source
资源文件夹是存放用户资源的地方。除 posts 文件夹之外,开头命名为 (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其他文件会被拷贝过去。

themes
主题 文件夹。Hexo 会根据主题来生成静态页面。

指令

init

$ hexo init <floder>

新建一个网站。如果没有设置 folder ,Hexo 默认在目前的文件夹建立网站。

new

$ hexo new [layout] <title>

新建一篇文章。如果没有设置 layout 的话,默认使用_config.yml 中的 default_layout 参数代替。如果标题包含空格的话,请使用引号括起来。

generate

$ hexo generate

生成静态文件

publish

$ hexo publish [layout] <filename>

发表草稿

server

$ hexo server

启动服务器。默认情况下,访问网址为:http://localhost:4000/。

deploy

$ hexo deploy

部署网站

clean

$ hexo clean

清除缓存文件(db.json)和已生成的静态文件(/public)。

list

$ hexo list <type>

列出网站资料

发布

Hexo博客在生成本地文件后,有两种发布到github的方式:HTTPS和SSH

HTTPS:

安装HTTPS发布工具:

$ npm install hexo-deployer-git --save

修改_config.yml文件:

deploy:

type: git

repo: https://github.com/yourname/yourname.github.io.git

branch: master

然后,执行配置和发布命令:

$ hexo d -g

HTTPS发布方式的优点是容易上手,不用过多的配置即可应用。缺点是每次发布时都要输入用户名和密码,如果频繁更新文章的话会很繁琐。

SSH:

输入以下指令(邮箱就是你注册Github时候的邮箱)后,回车:

$ ssh-keygen -t rsa -C "your@email.com"

然后它会提示要你输入passphrase

然后键入以下指令:

$ ssh-agent -s

继续输入指令:

$ ssh-add ~/.ssh/id_rsa

如果出错,则输入以下指令:

$ eval `ssh-agent -s`
$ ssh-add

复制~/.ssh/id_rsa.pub中的内容到github的SSH key

测试一下:

$ ssh -T git@github.com

然后执行配置和发布命令:

$ hexo d -g

SSH发布方式的优点是响应速度快,安全,省力。缺点是如果换在不同的电脑上应用的话会需要重新生成ssh-key。

写作

可以执行下列命令来创建一篇新文章

$ hexo new [layout] <title>