使用Netlify部署Hexo

前几天把评论迁移到netlify时,发现hexo也支持部署在这里,并且支持githubbitbucketgitlabAzure DevOps一键部署。只需要推送代码过去,netlify会自动部署。而且访问速度不慢
博客之前使用git部署在服务器上,正好有个问题一直没解决,就是在mac上运行 hexo deploy到服务器上的只有public下的内容。而在家里的win10运行hexo deploy,则部署的是整个项目,就导致nginx解析原本root路径是/,就需要解析到public,正好现在部署在在netlify解决一下

新建git仓库。

之前git仓库使用的是gitee,但netlify一键部署不支持,所以新建一个bitbucket的仓库来用。别问为什么不用github,推代码总是超时,用了魔法也经常失败。裆燃啦,你用github也可以,直接跳过这一步就好
因为之前用sourceTree已经注册过bitbucket,没有注册过的可以到 bitbucket 注册一下.

  • 注册完bitbucket 之后,新建一个workspace

  • 进入刚刚新建的workspace,然后创建一个仓库Repository

  • 上传本地的ssh公钥到bitbucket,使用ssh拉取或更新代码

  • 将本来到代码推送到bitbucket仓库

新建netlify项目

关联git仓库

新建一个site,然后选择要关联的仓库类型,我这里选择的是bitbucket。如果关联的是github仓库,还需要点一下Configure the Netlify app on GitHub. 授权一下可以关联的仓库。选择要使用的仓库

配置部署命令

设置你的网站名字,然后选择你的仓库分支,Base directory填/,Build command填npm i && hexo clean && hexo generate,Publish directory 填/public

如果你的仓库是已经编译过的,Build command为空就可以了

自定义域名

进入菜单Domain management,点击Add domain alias按钮新增一个域名。在你的域名管理平台添加一个dns解析,使用CNAME类型,添加解析记录为你的netlify site名称.netlify.app.。注意最后面是有个.

至此部署完成,只需要往git仓库推送代码就会自动部署了