环境:centos7 github gitee gitlab
两台服务器分别为
IP:192.168.88.114 (部署jenkins[4\6\8G])
IP:192.168.88.115 (充当tomcat网站服务器)
关闭防火墙\关闭selinux\配置yum源(base,epel阿里云)
一、安装相关工具
1、JDK
Jenkins是Java编写的,所以需要先安装JDK,采用yum安装,也可自己编译安装。如果对版本有需求,可以直接在Oracle官网下载JDK;本次课程使用的是后续的编译安装
2、MAVE安装
官网Maven – Welcome to Apache Maven
2.1下载 maven3.8.8 包
https://dlcdn.apache.org/mave选择自己需要的maven版本
wget https://dlcdn.apache.org/maven/maven-3/3.8.8/source/apache-maven-3.8.8-src.tar.gz
tar -zxvf apache-maven-3.8.8-src.tar.gz -C /usr/local/ (解压安装并指定安装路径)
mv /usr/local/apache-maven-3.8.8/ /usr/local/maven (重命名)
2.2配置环境变量
vim /etc/profile.d/jenkins_tools.sh
export M2_HOME=/usr/local/maven
export M2=$M2_HOME/bin
PATH=$M2:$PATH:$HOME/bin:/usr/local/git/bin
export MAVEN_HOME=/usr/local/maven
export PATH=${MAVEN_HOME}/bin:$PATH
source /etc/profile.d/jenkins_tools.sh (重读,使配置文件生效)
使用mvn -version命令测试maven环境是否配置完成
二、部署GIT
1、安装依赖包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker fontconfig -y
2、git官网下载最新版本GIT
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz
3、安装GIT
解压并cd到解压目录
tar xf git-2.9.5.tar.gz
cd git-2.9.5/
make prefix=/usr/local/git all (编译源码包,安装在/usr/local/git目录下 )
make prefix=/usr/local/git install (源码安装 )
4、修改环境变量
vim /etc/bashrc
PATH=$PATH:$HOME/bin:/usr/local/git/bin
(更新git的路径,从用户主目录下的 bin
目录 修改到 /usr/local下面 )
source /etc/bashrc (重读,使配置文件生效)
关于bashrc和profile
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次!!!登录!!!时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
git --version (测试GIT是否安装成功)
如果你查询的是低版本,有可能是系统YUM安装的.yum卸载之后即可.
yum remove git.x86_64 -y (卸载旧版本)
source /etc/bashrc
git --version
三、安装Jenkins
1、上传jdk11 tomcat9
2、解压jdk
tar xf jdk-11.0.16_linux-x64_bin.tar.gz
3、解压tomcat
tar xf apache-tomcat-9.0.79.tar.gz
4、拷贝并修改名称
mv jdk-11.0.16 /usr/local/java && mv apache-tomcat-9.0.79 /usr/local/tomcat
5、处理环境变量
vim /etc/profile.d/java.sh
TOMCAT_HOME=/usr/local/tomcat
JAVA_HOME=/usr/local/java
PATH=$TOMCAT_HOME/bin:$JAVA_HOME/bin:$PATH
export TOMCAT_HOME JAVA_HOME PATH
source /etc/profile.d/java.sh (重读配置文件)
检查java服务是否配置完成java -version
四、上传Jenkins
1、官网下载
jenkins: jenkins.war
下载2.422 上传至服务器
rm -rf /usr/local/tomcat/webapps/*
cp jenkins.war /usr/local/tomcat/webapps/
2、启动tomcat,并页面访问
访问 ip:8080/jenkins
http://192.168.88.114:8080/jenkins
2.1为了安全考虑,首先需要解锁Jenkins
2.2添入以下文件密码到上图页面中
cat /root/.jenkins/secrets/initialAdminPassword
fc02d21a85904676bbdd2727b3905aeb(根据个人本地密码的生成填写)
点击继续
3.选择suggested的插件进行下载
4.等待安装完成。
jenkins 插件安装缓慢问题
vim ~/.jenkins/hudson.model.UpdateCenter.xml
<url>http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
vim ~/.jenkins/updates/default.json
替换命令
% s/www.google.com/www.baidu.com/g
% s/updates.jenkins.io\/download/mirrors.tuna.tsinghua.edu.cn\/jenkins/g
旧版: http://updates.jenkins-ci.org/download 替换成 https://mirrors.tuna.tsinghua.edu.cn/jenkins
新版:https://updates.jenkins.io/download 替换成 https://mirrors.tuna.tsinghua.edu.cn/jenkins
修改完以后,重启Jenkins服务再输入密码,继续安装,速度贼快。
http://192.168.229.11:8080/jenkins/restart
重启tomcat
5.创建用户
完成后点击保存并完成
6.jenkins的分享地址
http://192.168.88.114:8080/jenkins/
7.前台安装完成
如果这个页面过一会消失了。并且常时间空白。可能需要你登录了。换个浏览器,打开相同的地址就会出现认证页面。
8、欢迎界面
五、系统配置
1、全局变量设置
2、全局工具配置
2.1maven配置
/usr/local/maven/conf/settings.xml
2.2添加JDK工具
点击新增---> 取消自动安装 ---->然后查询Jenkins服务器上JDK的路径,填写JAVA_HOME ---> 保存即可
点击保存
SSH 设置
简介:(192.168.88.114)jinkens服务器上的maven将开发产生的*.war包。 通过SSH自动推送到远程tomcat 服务器上(192.168.88.115)。 需要手工配置ssh key。配合自动化推送
192.168.88.114是jenkins
192.168.88.115是tomcat网站服务器,代表业务服务器
1.jenkins服务器准备秘钥认证
ssh-keygen 后一路回车
ssh-copy-id -i 192.168.229.21
注意这里的192.168.229.21是一台tomcat网站服务器。什么都不用安装,接到代码即可。
ssh 192.168.229.21 登录不需要密码即可
3、在jenkins上配置ssh信息
在114这台机准备SSH私钥
cat ~/.ssh/id_rsa
你无法完成下面操作,因为ssh的插件没有安装!!!!!
六、插件管理
这里有可更新、可选未安装插件、已安装插件;可以通过过滤快速查找
1、安装插件
1.1Maven Integration plugin 安装此插件才能构建maven项目
1.2Deploy to container Plugin 安装此插件,才能将打好的包部署到tomcat上
1.3安装git相关3个插件
GIT plugin
GitHub Authentication
GitHub Branch Source (默认已安装)
GitHub Organization Folder (淘汰了。不用安装这个插件了 )
1.4安装插件:Publish Over SSH
优化maven ,配置国内maven镜像
vim /usr/local/maven/conf/settings.xml
<mirror>
<id>central</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
2、配置ssh的秘钥
七、自动化构建打包、部署
Jenkins+Maven+Github+Tomcat 自动化构建打包、部署
创建一个Maven工程
1.构建maven项目
2.源码管理
选择版本控制器和仓库地址
互联网仓库2 easy-springmvc-maven: jenkins 测试
easy-springmvc-maven: 测试jenkins
注释:如果是私有仓库,这里需要建立credentials身份认证
3.设置触发器(保持默认)
4.设置构建(编译打包)
手动添加Goals and options
clean package -Dmaven.test.skip=true
5.构建后操作
在构建后设置中 选择:(send build artifacts over ssh)通过SSH发送构建工件
点击-》增加构建后操作
说明:
name:ssh server 因为之前的配置会默认出现tomcat业务服务器的名字
source file:
target/*.war 构建之后,在jenkins服务器上是可以自动看到war包的。(该路径不需要创建)
Remove prefix:自动删除路径前缀(不需要创建路径前缀)
Remote directory:tomcat业务服务器上的路径,需要提前在192.168.88.115(tomcat)上创建该目录。 用来存放网站源代码。(需要后台创建) # mkdir -p /jenkins/war
Exec command:
tomcat(192.168.88.115)在接收到源码之后的自定义动作。
比如:将源码拷贝到网站的主目录(/jenkins),并执行一些其他操作如重启服务器等(或创建文件touch)(需要后台创建)
#mkdir /jenkins/sh
# vim /jenkins/sh/deploy.sh
cp -r /jenkins/war/*.war /jenkins
touch /tmp/aaaaaa.txt
#chmod +x /jenkins/sh/deploy.sh