博客自动部署

利用github的webHooks实现hexo项目的自动打包部署

准备工作

  • node.js,Git
  • github/码云上创建hexo项目
  • 一台云服务器/本地服务器,需要公网IP
  • 一点后端代码和shell脚本

服务器部署

在服务器的项目目录下执行:

1
2
3
4
$ npm install -g hexo-cli
$ git clone 你的hexo项目git地址
$ cd 你的项目名称
$ npm install

设置webHooks钩子

1、 登录github/码云,进入项目-管理-webHooks
2、 添加/新增钩子,每次向这个项目push代码,就会触发这个钩子,像服务器发送一个请求,URL/POST地址设置为:

1
http://139.196.161.11:8080/hooks?password=yourpassword&filename=你的shell脚本名称

3、 服务器端接受到请求传过来的filename参数,执行对应的shell脚本
shell脚本主要代码:

1
2
3
4
cd /xxx/你的项目名称
git pull
hexo g
hexo d

0%