总体思路
-
原则上,Hexo的运行环境与博客目录分离。
-
具体来讲,用Docker方式安Hexo,配置Docker里的git环境并建立与coding的链接;在本机建立博客目录,并配置主题、写博客;最后,运行,可配置快捷方式(本文是Linux系统,在
.bashrc
添加),运行博客系统或者发布博客。
安装和运行Hexo
- 方案一:直接安装。参考Hexo中文文档——安装,不赘述。
- 方案二:采用Docker。即采用如下的
dokcerfile
创建docker。
1 | ## https://blog.csdn.net/u013076044/article/details/66289301 |
建立一个博客目录并配next
主题
先绑定~/test/
目录的方式进入docker
1 | docker run -it -p 4000:4000 --name myblog_hexo -v ~/test/:/opt/website myblog_hexo /bin/bash |
在docker里的/opt/website/
目录下,执行如下代码:
1 | hexo i blog |
这样在本地会有一个~/test/blog/
文件夹,就是博客的主目录,修改其中的_config.yml
更改主题
1 | theme: hexo-theme-next |
运行博客
先在Linux系统中的~/.bashrc
中加入如下代码(注意,这里绑定了博客目录~/test/blog/
到docker的/opt/website
)
1 | alias hbrun='docker stop myblog_hexo ; docker rm myblog_hexo ; docker run -it -p 4000:4000 --name myblog_hexo -v ~/test/blog/:/opt/website myblog_hexo /bin/bash -c "ssh -T git@git.coding.net; ssh -T git@github.com; bash"' |
然后,运行hbrun
命令用于进入docker。若在本机进入~/test/blog/
目录,运行hbs
即可本地发布博客,浏览器输入http://localhost:4000/
查看。而hb2git
命令的使用,看下一部分。
使用git管理Hexo
一开始的dockerfile
代码中,因为该docker是第一次用git,因此dockerfile
里一定要运行如下命令(第二条可不运行):
1 | git config --global user.email "your@email" |
在coding上导入公钥/root/.ssh/id_rsa.pub
后,测试是否成功(如果后面使用过程中出现连接错误,这个测试可以解决问题):
1 | ssh -T git@git.coding.net |
接着在coding上注册一个项目yourblog
,获取链接git@git.coding.net:youname/yourblog.git
之后,在主目录的_config.yml
添加如下代码。注意有坑,主目录下_config.yml
在配置deploy时要忽略掉.deploy_git文件夹,不然每次部署该目录由于递归存入会滚雪球增大。
1 | deploy: |
然后,运行前面提到的hb2git
命令,就可以把生成的网页目录~/test/blog/public/
部署到coding项目的master分支;而整个博客项目~/test/blog/
推送到hexo分支。
经过如此一番,就可以到coding上去部署自己网页啦。即打开浏览器,进入coding刚建立的项目yourblog
,代码-pages服务,部署来源选择master,然后可以选择https访问。
另外,遇到换电脑时,只要Hexo已经安装好,下载hexo分支即可直接得到整个博客项目。
1 | git clone -b hexo git@git.coding.net:youname/yourblog.git |
最后,为了管理主题方便,可用git来管理主题,请参考该文:hexo博客配置-主题管理与配置
注意事项
next主题从5到6的版本更新要注意,许多lib不能用了。从 NexT v5.1.x 更新