Hexo发布时通过ssh使用远程服务器自动拉取

2020-03-25  本文已影响0人  岑吾

最近把服务器改成了阿里云的ECS,每次发布的时候还得手动去服务器上pull一下代码,感觉挺麻烦的,于是写了一个插件可以自己拉取。

1. 安装插件

npm install hexo-zngw-asset-image

2. 配置服务器信息

打开博客目录下的_config.yml配置添加:

zngw_sshpull:
    host: zengwu.com.cn   ## 需要更新的服务器地址,可以是ip也可以是域名 
    port: 22              ## 服务器ssh连接端口
    username: root        ## ssh连接用户名
    # password:           ## ssh连接密码,如果填了密码,则私钥无效
    key: ./zngw.pem       ## ssh私钥文件,相对博客根目录路径或绝对路径
    dir: /data/web/blog   ## 博客在服务上的目录,不填写刚不进行目录移动
    exec: git pull        ## 执行的更新命令,也可以在服务器上编写批处理用这个调用

3. 配置发布信息

打开博客目录下的_config.yml配置在deploy提交git后添加

deploy:
- type: git
  repo: git@github.com:zngw/zngw.github.io.git
  branch: master
- type: zngw-sshpull  # 添加上传配置

4. 发布

先在服务器上下载并配置好git,使git记住密码可使用密钥。然后这边发布的时候直接hexo d就可以了,先会提交到git上,结束之后就会ssh连接到服务器执行git pull拉取操作。也可以在服务器上写个批处理,处理自己想要的。

上一篇 下一篇

猜你喜欢

热点阅读