Git+Jenkins+Shell实现持续部署
** 本文主要实现了在Centos7平台使用Git+Jenkins+Shell实现SpringCloud项目的持续部署,当然如果是使用其他的版本管理器如SVN也是可以参考本文进行配置,教程很详细每个步骤都会讲解,如有遗漏或者错误欢迎大家指正。**
1.安装Jenkins
因为Jenkins安装比较简单,只是一个war包安装Tomcat部署上去进行配置即可,同理部署需要安装Git和Maven直接安装好就行
1.1安装所需环境
按顺序安装好Jdk,Maven,Tomcat,Git
1.2启动服务
然后直接将jenkins.war放到tomcat的webapps目录下启动tomcat即可
1.3获取密码
启动后打开浏览输入地址:http://ip8080/jenkins访问Jenkins,会提示第一次访问需要密码
输入cat /root/.jenkins/secrets/initialAdminPassword,然后粘贴密码
1.4 JenKins离线
输入密码后会提示你的Jenkins实例似已离线。
直接搜索文件
[root@localhost ~]# find / -name "hudson.model.UpdateCenter.xml"
/root/.jenkins/hudson.model.UpdateCenter.xml
[root@localhost ~]# vi /root/.jenkins/hudson.model.UpdateCenter.xml
将https://updates.jenkins.io/update-center.json修改为http://updates.jenkins.io/update-center.json即可:wq!保存退出,重新启动tomcat即可
<sites>
<site>
<id>default</id>
<url>http://updates.jenkins.io/update-center.json</url>
</site>
</sites>
1.5插件安装
输入密码后提示消失了,现在选择第一个安装推荐的插件
1.6 缺少插件
报错:No such plugin: cloudbees-folder
我们去http://ftp.icm.edu.pl/packages/jenkins/plugins/cloudbees-folder/下载这个插件
将插件放入tomcat的/webapps/jenkins/WEB-INF/detached-plugins重启tomcat即可(我也觉得烦)
1.7下载插件
重启过后自动下载插件,下载失败的话不管他,这一步花的时间会比较久
1.8注册账号
下载一段时间后会提示部分插件安装失败,不管他直接下一步注册一个新账号,账号密码都设置为admin
1.9安装完毕
然后会有个修改路径,不用管直接下一步,到这一步Jenkins就安装好了
2 配置Jenkins
现在开始配置Jenkins
2.1 全局安全配置
全局安全配置
2.2全局工具配置
全局工具配置:Maven
全局工具配置:JDK
全局工具配置:Maven
2.3 手动安装插件
现在安装各种需要的插件
为了开发方便先下载一个Jenkins的汉化插件
主界面 -> 系统管理 -> 插件管理 -> 可选插件
1.1 安装插件Locale plugin
1.2 安装插件Localization: Chinese(Simplified)
修改配置:
系统管理 -> 系统设置 -> Locale
jenkins重启
浏览器地址栏输入
http://ip:8080/restart重启
汉化以后继续下载插件,按照自己的需求去下载,也可以百度所必须的插件
3 新建项目
插件安装完成后,就可以开始新建项目了
3.1选择安装方式
选择第一个安装
因为我是SpringCloud项目所以需要将每个服务都新建一个
3.2配置Git账号
选择源码管理选择Git>点击添加用户选择自己的git账号即可
新增后需要手动选择一下用户
输入完毕先保存
3.3构建服务
返回首页,找到新建的项目,点击构建
4 配置shell操作Maven,启动服务
构建成功,如果失败了点w下面的图标>控制台输出,查看日志,一般构建失败是插件安装不完全。
到了这一步就完成了从git上拉取到代码了,下面就需要使用shell脚本对Maven进行操作,以及启动服务。
现在再次进入项目配置
4.1 在构建操作中打开执行shell
构建>Exeute shell
4.2搜索Jenkins工作空间
现在我们回到服务器中,搜索workspace,找到.jenkins的工作空间,你服务的代码就放在这个位置
[root@localhost bin]# find / -name workspace
/root/.jenkins/workspace
```shell
进入该目录,你更新的代码就都在这个位置了
```shell
[root@localhost bin]# cd /root/.jenkins/workspace
[root@localhost workspace]# ll
total 4
drwxr-x---. 18 root root 4096 Feb 27 05:09 zh-system-eureka
drwxr-x---. 2 root root 6 Feb 27 21:01 zh-system-eureka@tmp
[root&