Linux 下安装并配置Jenkins
1. Jenkins 安装
1.1 Jenkins介绍
Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。
1.2 安装环境
操作系统:linux(centOS)
软件:jdk 8
软件:tomcat
软件:jenkins(最新版本的稳定版本2.89.4)
1.3 安装步骤
方式一: yum安装Jenkins:
1. 检查JDK是否安装:java –version, 如果没有,则首先要安装JDK
2. 下载jenkins 安装包:
sudo wget -O /etc/yum.repos.d/jenkins.repohttps://pkg.jenkins.io/redhat-stable/jenkins.repo
yum的repos中默认是没有Jenkins的,需要先将Jenkins存储库添加到yum repos :
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
用yum进行安装:
sudo yum install Jenkins
查询jenkins 的安装目录:
rpm-ql Jenkins
以上为稳定版本,最新版本安装步骤:
sudowget -O /etc/yum.repos.d/jenkins.repohttp://pkg.jenkins-ci.org/redhat/jenkins.repo
sudorpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudoyum install jenkins
3. 配置jenkins:
(此步骤可以不执行,在启动的脚本里可以指定端口号java -jarjenkins.war --httpPort=8011 &)
Jenkins 的默认端口号是8080,与tomcat 的默认端口号冲突,需要修改jenkins 的端口号,进入文件:
vi /etc/sysconfig/Jenkins
查找/JENKINS_PORT,修改JENKINS_PORT="8080",默认为“8080”,修改为8011
JENKINS_PORT="8011"
4. 启动Jenkins:
service jenkins start
(也可以用以下启动:java -jar jenkins.war --httpPort=8011 &)
5. 在浏览器输入ip:8011进入Jenkins登录页面
进入登录页面后,Jenkins提示我们需要输入超级管理员密码进行解锁。根据提示,我们可以在/var/lib/jenkins/secrets/initialAdminPassword文件里找到密码。
输入命令以找到密码:
tail/var/lib/jenkins/secrets/initialAdminPassword
找到密码后,复制密码,粘贴到Jenkins解锁页面,点击Continue继续初始化配置。短暂的等待后,进入插件安装页面
6. 安装插件并按照指引创建第一个管理员用户:
用户名:admin
密码:admin123
按照推荐安装插件,并且需要特殊安装一下插件:
插件:SSH slaves
Roles-based ……..
7. 安装gradle:需要在jenkins服务器上安装gradle,版本与打包项目的gradle版本一致。
问题记录:进入插件安装界面时,一直提示当前的网络状态是offline,无法在线安装插件。这应该是https证书搞得鬼。那怎么做呢?
安装插件那个页面,就是提示你offline的那个页面,不要动。然后打开一个新的tab,输入网址http://localhost:8080/pluginManager/advanced。 这里面最底下有个【升级站点】,把其中的链接改成http的就好了,http://updates.jenkins.io/update-center.json。 然后在服务列表中关闭jenkins,再启动,这样就能正常联网了。
方式二: war 包的安装方式。
1. https://jenkins.io/download/官网下载最新版本的稳定版本war包:2.89.4
2. /usr/lib/下新建文件夹jenkins,将jenkins.war包放到/usr/lib/jenkins下
3. 将start 脚本/usr/lib/jenkins下
4. 执行start 脚本:./start
参考网址:https://www.cnblogs.com/zhangxue521/p/8336216.html
http://blog.csdn.net/andyzhaojianhui/article/details/73472500
2. Jenkins 使用:
2.1 使用管理员用户,进入系统管理进行系统配置:
在这里配置链接各个服务器的统一密码:
如果各服务器密码不一致,则需要单独配置:
2.2 使用管理员用户,在首页点击新建,进行构建项目的配置
需要构建的项目包括以下:
AppServer-main
AppServer-ca
AppServer-msg
AppServer-manage
AppServer-cmis
请将以上项目统一配置在一个标签下:AppServer生产环境。
(参照封测环境的项目构建进行配置)
注意:git 打包时要打包master分支
2.3 配置各个项目服务器
进入各个服务器的根目录:
cd ~
在该目录下创建文件夹:mkdir JenkinsRestart
将AppServerRestart.sh 脚本放在跟目录下。
sh 脚本的命名请参考以下:
AppServer-main AppServerRestart.sh
AppServer-ca AppCaRestart.sh
AppServer-msg AppMsgRestart.sh
AppServer-manage AppManageRestart.sh
AppServer-cmis AppCmisRestart.sh
2.4 在各个项目的根目录下创建VERSION文件
viVERSION
并写入项目对应的版本号
2.5 修改各个服务的启动脚本start.sh
AppServer:
version=$(cat VERSION)
file=AppServer-main-$version-exec.jar
nohup java $jconsoleArgs -jar $file-Dfile.encoding=UTF-8 --spring.config.location=./application.yml--logging.config=./logback.xml &
Appca:
version=$(catVERSION)
file=AppServer-ca-$version-exec.jar
nohupjava -jar $file --spring.config.location=./bootstrap.yml --logging.config=./logback.xml &
AppCmis:
version=$(catVERSION)
file=appcmisserver-$version-exec.jar
nohupjava -jar $file -Dfile.encoding=UTF-8--spring.config.location=./application.yml --logging.config=./logback.xml &
AppMsg:
version=$(catVERSION)
file=AppServer-Msg-$version-exec.jar
nohupjava -jar -Dfile.encoding=UTF-8 $file--spring.config.location=./application.yml --logging.config=./logback.xml &
AppManage:
version=$(catVERSION)
file=appmanage-$version-exec.jar
nohupjava -jar $file -Dfile.encoding=UTF-8--spring.config.location=./application.yml --logging.config=./logback.xml &