欢迎访问,这是在我司内部搭建使用的一个博客系统。实现流程图如下:
push webhooks
Server(Hexo)---------->repository(github)------------>tools--->企业微信
^ |
| |
| read send msg |
+---------------------people<--------------------------------+
$ hexo init <folder>
$ cd <folder>
$ npm install
$ npm install hexo-generator-feed --save
$ npm install hexo-abbrlink --save #固定链接
$ npm install hexo-generator-sitemap --save #SEO优化
$ npm install hexo-math --save #支持LaTeX语法
$ npm install hexo-deployer-rsync --save #支持部署到vps上
<folder>/_config.yml
),需要修改部分如下。其他配置文件参见这里,可根据需要修改。title: your title
language: zh-Hans
permalink: post/:abbrlink/
plugin:
- hexo-generator-feed
deploy:
- type: git
repository: git@github.com:SmartBrave/SmartBrave.github.io.git
branch: master
- type: rsync
host: <主机地址>
user: <用户名>
root: <需要放置博客的根目录>
port: <端口>
delete: [true|false] #是否删除主机上的旧目录
verbose: [true|false] #显示调试信息
ignore_errors: [true|false] #忽略错误
abbrlink:
alg: crc32
rep: hex
math:
engine: 'mathjax'
mathjax:
src: custom_mathjaxsource
config:
# MathJax config
katex:
css: custom_csssource
js: custom_jssource
config:
# KaTeX config
true
,并在文章头部添加mathjax: true
。$ git clone https://github.com/SmartBrave/blog_tools.git ~/blog_tools
$ cd ~/blog_tools
$ go build
$ cd ~ && nohup ~/blog_tools >/dev/null 2>&1 &
$ cd <folder> && nohup hexo server >/dev/null 2>&1 &
**以上3步,可以直接在 docker 上获取我配置好的镜像**
$ docker pull smartbrave/docker-hexo
配置完成后,使用下面的命令运行
$ docker run -d -v /www/blog/source/_post/_config.yml:/www/blog/_config.yml:rw -v /www/blog/source/_posts/source:/www/blog/source:rw -v /www/blog/source/_posts/themes:/www/blog/themes:rw -p 4001:4000 --privileged=true docker.io/smartbrave/docker-hexo bash -c 'cd /www/blog && hexo server'
<folder>/source/_post
)新建一个 md 文件,命名为文章名.md
;hexo new article
新建文章,然后编辑;/www/blog/source/images/
文件夹下,通过 /images/xxx.jpg
引用(或通过图床引用,在此不表);$ hexo g -d
若提示找不到 git,请执行:
$ npm install hexo-deployer-git --save
$ cd <folder>
$ nohup hexo server >/dev/null 2>&1 &