Jenkins 入门实战三:Jenkins+Nginx+Hexo+Github+Centos 实现自动部署博客

Jenkin+Nginx+Hexo+GitHub+Centos 实现自动部署博客

此篇博客不讲环境搭建,主要记录我自己在搭建Jenkins自动部署我的博客的过程中,遇到的一些难点问题和一些解决办法,以此来避免下一次遇到相同的问题,提高自己的做事效率。

前言

首先,应该在Centos系统上搭建好我们的 Jenkins,Nginx,JDK,Git,Tomcat 的环境

原理

我们将windows本地的博客,通过 hexo d 命令部署到GitHub上,然后通过配置 Jenkins,GitHub收到有更新的代码,会通知Jenkins 来重新构建我们的博客,构建的方式需要我们根据自己的情况,自行配置。

配置过程记录

​ **1)**在Jenkins 全局工具配置中 (Global Tool Configuration) 配置我们Centos中JDK和Git的路径

​ **2)**在Jenkins中新建一个 Freestyle Project 的项目,然后进行项目配置

源码管理 配置如下:

构建出发器配置 如下:

我们只需要将 GitHub hook trigger for GITScm polling 这一选项勾上就行了,代表Github收到代码更新之后,会自动的触发Jenkins 构建项目

构建环境 配置,我们只需要配置 Execute shell 选项,在里面添加我们的构建过程,我的配置如下:

然后,点击应用保存即可。总之就是配置两个地方,全局工具配置Git,然后新建项目,再项目中配置github地址,添加私钥,和构建过程。

遇到的坑

(1)构建项目报错,显示权限不够:

报这个错误的原因是登录Jenkins的用户是一个普通用户,我们需要给这个用户添加权限,添加权限的方式就是找到Manage Jenkins >Configure Global Security>Strategy (全局安全配置中的授权策略)给用户添加权限。如下所示:

(2)Nginx报403 Forbidden 禁止访问

原因:这是由于我们启动Nginx服务的是root用户,但是对Nginx 中的目录进行写入的是Jenkins中的用户,导致没权限访问。

解决办法: 进入Nginx目录中,修改Nginx中 html目录的权限

$ chomd -R 777 ./html

总结

至此,整个博客自动部署流程就配置好了,省时省力。以前的做法是先在windows本地编辑好了博客,然后需要去覆盖centos系统中,Nginx目录中HTML目录下的public目录,两个系统来回切换十分麻烦。现在只需要上传到github上就可以实现自动构建项目。
如果大家嫌弃Github太慢了,可以将github换成gitee或者是gitlab。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值