Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。
由于jenkins基于JAVA开发,所以需要先安装JDK
(1)前往官网安装,下载安装JDK1.8,下载地址点我前往
选择:
(2)将下载好的JDK上传到虚拟机中
(3)执行安装命令
rpm -ivh jdk-8u211-linux-x64.rpm
(1)输入以下命令进行安装
先安装wget
yum -y install wget
运用weget下载jenkins
wget https://pkg.jenkins.io/redhat/jenkins-2.185-1.1.noarch.rpm
(2)安装jenkins
rpm -ivh jenkins-2.185-1.1.noarch.rpm
(3)为了避免与tomcat的端口号冲突,修改jenkins的端口号
vi /etc/sysconfig/jenkins
修改
JENKINS_USER="root"
JENKINS_PORT="8235"
端口可以随意用,不冲突就好
(4)启动服务
systemctl start jenkins
(5)访问http://192.168.192.130:8235
从/var/lib/jenkins/secrets/initialAdminPassword中获取初始密码串
终端选输入:cat /var/lib/jenkins/secrets/initialAdminPassword
(6)安装插件
等待安装完成:
选择安装推荐插件即可
(7)建立一个管理员用户
然后一路下一步即可到达主界面:
(1)安装Maven插件
点击主界面的Manage Jenkins,进入管理界面
选择插件管理
根据下面图片选择安装maven插件:
显示如下则安装完成:
(1)将maven的安装包上传到虚拟机中(我下载的是3.6.1版本)
(2)解压
tar -zxvf apache-maven-3.6.1-bin.tar.gz
(3)移动目录
mv apache-maven-3.6.1 /usr/local/maven
(4)编辑setting.xml配置文件
vi /usr/local/maven/conf/settings.xml
配置本地仓库目录,内容如下
<localRepository>/usr/local/repository</localRepository>
(5)将开发环境的本地仓库上传至服务器(虚拟机)并移动到/usr/local/repository 。
mv reponsitory /usr/local/repository
执行此步是为了以后在打包的时候不必重新下载,缩短打包的时间。
(6)编辑setting.xml配置文件 vi /usr/local/maven/conf/settings.xml
<pluginGroups>
<pluginGroup>com.spotify</pluginGroup>
</pluginGroups>
yum install git
在jenkins住页面中选择系统管理,全局工具配置
(1)JDK配置
(2)git配置
(3)Maven配置
配置完后保存
(1)回到首页,点击新建按钮 .如下图,输入名称,选择创建一个Maven项目,点击OK
为什么是config?因为在上一篇文章中,我们构建docker镜像的时候,给config添加好了相关依赖,所以这里还是继续选择config
点击确定,跳转到源码管理
(2)源码管理
前提是已经将代码上传到git仓库中,可以选择码云或者github,我已将代码上传到gitHub,所以这里用的是github上的url(使用github连接速度较慢,建议还是用码云或者自己搭建一个)
(3)Build
clean package docker:build -DpushImage
用于清除、打包,构建docker镜像
最后点击“保存”按钮
回到jenkins的首页,点击启动按钮:
可以看到这里的状态
构建时出现以下错误:
进入相关文件夹查看发现路径不对:
返回首页修改item的Build为:
tesquare_parent/tesquare_config/pom.xml
再次构建:
…
出现了新的问题:
估计是配置本地仓库的时候除了问题,路径也没错,但是就是识别不出,没办法,最后直接用默认的仓库了,构建的时候需要下载一些依赖,时间可能要长一点:
如果出现一下错误:
Maven error: Failed to execute goal on project : Could not resolve dependencies for project
记得要更改一下远程仓库,这里推荐阿里云的,修改/usr/lcoal/maven/conf下的settings文件,在mirrors里添加:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
(1) 浏览器输入:http://192.168.192.130:5000/v2/_catalog
(2)docker images
docker run -d --name=tensquare_config -p 12000:12000 192.168.192.130:5000/tensquare_config:1.0-SNAPSHOT
(4)浏览器输入:http://192.168.192.130:12000/user-dev.yml
,看到如下内容:
注:需要修改pom.xml的依赖,每个微服务的配置中心uri的IP要改成虚拟机的IP,以及在github中Eureka服务中心的地址
Eureka的端口号我改成了9761,原来是6868
jenkins工作台:
完整项目源码已上传github,源码地址