Jenkins
![在这里插入图片描述](https://img-blog.csdnimg.cn/5e1153c9e0614784907653e200140ce4.png)
Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。
官网:
https://jenkins.io/
官方文档:
https://jenkins.io/doc/
1、Jenkins安装
下载jenkins
docker pull jenkins/jenkins:lts-centos7
创建jenkins容器
docker run -d --name myjenkins -p 8888:8080 jenkins/jenkins:lts-centos7
配置jenkins
第一次使用jenkins需要做很多配置,将资源中的 default.json maven的安装包 jdk的安装包上传到linux服务器,配置时会使用到。
镜像加速
jenkins官方镜像下载速度特别慢,需要配置国内镜像。
参考解决方法:
https://blog.csdn.net/u013788943/article/details/103822785
访问配置
输入http://192.168.12.128:8888
访问jenkins,提示需要解锁
# 进入到容器
docker exec -it -u root myjenkins bash
# 查看密钥
cat /var/jenkins_home/secrets/initialAdminPassword
复制密钥 到浏览器 并点击继续
jenkins的很多功能都需要插件来完成,我们先安装好推荐的插件
等待插件安装:
如果镜像没配置成功这里会超级慢
新建用户
填写用户名密码后点击保存并完成
弹出的实例IP没问题也是保存并完成,然后点击开始使用jenkins
用户名yonghuming/123456
进入到jenkins欢迎页面
2、安装插件
安装Maven插件
手动安装插件maven插件,如果缺少Maven IntegrationPlugin插件,在创建job时,不会有新建一个maven项目选项。
在Jenkins首页选择 Manage Jenkins -> Manage Plugins
选择 可选插件,搜索 Maven Integration。直接安装即可。
安装 Publish Over SSH
重复上述步骤,安装对应插件即可。
安装git插件
和上面一样 安装git插件
3、全局工具配置
将maven和jdk的压缩包拷贝到容器中
# 将资源拷贝到容器
docker cp ./jdk-8u45-linux-x64.rpm myjenkins:/usr/local/
docker cp ./apache-maven-3.6.3-bin.tar.gz myjenkins:/usr/local/
# 进入容器 以root用户角色进入
docker exec -it -u root myjenkins bash
安装jdk
cd /usr/local
# 安装jdk 会被安装到这个目录: /usr/java/jdk1.8.0_221-amd64
rpm -ivh jdk-8u171-linux-x64.rpm
# 配置环境变量
vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
# 使配置生效
source /etc/profile
安装maven
cd /usr/local
# 解压maven
tar -zxvf apache-maven-3.6.3-bin.tar.gz
# 配置阿里云镜像 /usr/local/apache-maven-3.6.3/conf
vi /usr/local/apache-maven-3.6.3/conf/settings.xml
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
全局工具配置-jdk
点击 系统管理 --> 全局工具配置
点击新增jdk
全局工具配置-maven
远端服务器配置
当自动构建完成之后,会将打包好的工程,经由网络传输到其他服务器,但是需要配置
4、任务构建
新建任务
1.在Jenkins首页创建 新任务
2.在创建任务页面,输入任务名称,同时选择构建maven项目
源码管理
选择 源码管理 -> Git。设置当前Gitlab仓库地址和认证信息
对于认证信息,点击添加。在页面中,类型:Username with password。用户名:git用户名 。密码:git密码。点击添加即可。
注意:如果当前是公共仓库,不需要设置认证信息。如果是私有仓库,则需要。
maven设置
选择Build选项
输入maven指令。用于清除、打包,最后点击“保存”按钮,然后 应用 保存!
远程设置
jenkins会自动的将打包好的jar包,推送到其他服务器。
构建任务
返回首页,在列表中找到我们刚才创建的任务
点击右边的绿色箭头按钮,即可执行此任务。
点击后,在首页左下角会显示构建的进度条。
点击进度条,则可以进入到构建详情页面中。直至构建成功。
当构建成功,其会把war包生成,放入服务器jenkins目录中。
构建启动脚本
#!/bin/sh
APP_NAME=/root/tanhua/tanhua-server/tanhua-server.jar
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
if [ -n "$pid" ]
then
kill -9 $pid
fi
BUILD_ID=DONTKILLME
/usr/local/jdk1.8.0_201/bin/java -jar -Xmx256m -Xms128m $APP_NAME > /dev/null 2>&1 &
设置权限
chmod u+x app.sh