jenkins持续集成安装、配置、部署

本文详细介绍Jenkins的安装配置步骤,包括环境搭建、插件安装及自动化部署实践等内容,帮助读者快速掌握Jenkins的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jenkins介绍:

  • 它是一个自动化的周期性的集成测试过程,从检出代码、编译构建、运行测试、结果记录、测试统计等都是自动完成的,无需人工干预,有利于减少重复过程以节省时间、费用和工作量;

  • 它需要有专门的集成服务器来执行集成构建;

  • 它需要有代码托管工具支持,比如SVN;

  • 官网地址地址:https://jenkins.io

  • Jenkins的主要目标是监控软件开发流程,快速显示问题;

  • jenkins持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,所以它有利于减少重复过程以节省时间、费用和工作量。

jenkins安装、配置、部署

1.准备安装JDK1.8

2.准备安装tomcat,并设置相应的环境变量,将下载好的jenkins.war放到tomcat目录下webapps下

3.安装apache maven

    (1)解压maven的tar包

tar - xvf apache-maven-3.5.4-bin.tar.gz

    (2)设置环境变量:vi /etc/profile,在最后添加:

export MAVEN_HOME=/usr/local/maven/apache-maven-3.5.4  #maven的安装目录
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

    (3)source /etc/profile 使得配置立即生效

4.关闭防火墙

#centos7

systemctl stop firewalld.service

 

5.启动tomcat,访问http://192.168.220.100:8080/,进行jenkins引导初始化: 第一次启动Jenkins时,出于安全考虑,Jenkins会自动生成一个随机的按照口令。注意控制台输出的口令,复制下来,然后在浏览器输入密码:

 

进入用户自定义插件界面,建议选择安装官方推荐插件,因为安装后自己也得安装:

 

插件一次可能不会完全安装成功,可以点击Retry再次安装。直到全部安装成功

等待一段时间之后,插件安装完成,配置用户名密码:(我配置的用户名和密码为:hezh,888888)

 

6.配置全局变量:

系统管理 > 全局工具配置:

JDK:

 

MAVEN:

 

7.配置 SSH免登陆

ssh的配置可使用密钥,也可以使用密码,这里我们使用密钥来配置,在配置之前先配置好jenkins服务器和应用服务器的密钥认证 jenkins服务器上生成密钥对,使用ssh-keygen -t rsa命令

输入下面命令 一直回车,一个矩形图形出现就说明成功,在~/.ssh/下会有私钥id_rsa和公钥id_rsa.pub

ssh-keygen -t rsa

ssh-copy-id -i id_rsa.pub 192.168.220.101

chmod 644 authorized_keys

应用服务器上重启ssh服务,service sshd restart现在jenkins服务器可免密码直接登陆应用服务器

8.Push SSH(项目采用插件进行war包部署和服务启动,因此可不进行此项配置

系统管理 > 系统设置

选择 Publish over SSH

 

Passphrase 不用设置 Path to key 写上生成的ssh路径:/root/.ssh/id_rsa

下面的SSH Servers是重点

Name 随意起名代表这个服务,待会要根据它来选择 Hostname 配置应用服务器的地址 Username 配置linux登陆用户名 Remote Directory 不填

9.部署项目

 

 

 

 

每晚11:00整定时构建:

 

此处在构建时出现问题:显示找不到pom.xml文件,先将root pom改为pom.xml,执行一次构建,然后再加上CAD_Parent/,再执行构建,就会成功。

 

此处注意:若该项目模块不是一个单独的项目,pom.xml路径应该加上父项目路径,进行所有依赖的构建

-P89:选择pom,xml中配置的89环境,使用89服务器数据库

 

注意:jenkins的工作空间为:cd /root/.jenkins/workspace/192.168.220.100_SCM/192.168.220.100_SCM为job名称

          此处deploy war to a container中war/ear files路径应该填填:SCM_Server/target/*.war,如果填**/*.war,会出现一些莫名的错误,如:tomcat启动不起来                   (oracle.jdbc.driver.OracleTimeoutPollingThread.run

          containers 中Credentials用户为:tomcat根目录下conf->tomcat-users.xml中添加的manager-script用户(tomcat版本为8):

          

        tomcat url需要填写到端口号,而不仅仅是ip :  

此时有可能会出现以下错误:

 

解决方案:

/webapps/manager/META_INF/context.xml文件,将文件中对访问的来源受限设置注释

 

注意事项:

1.在进行项目构建之前应该保持tomcat处于运行状态。

2.所有tomcat配置修改后,应该进行重启操作

3.如果遇到“Connection refused”的异常请检查远程机的容器是否启动、端口是否设置正常,不同的容器配置方式不一样,请参考相应容器的配置文档

4.部署期间遇到了tomcat启动失败的问题,日志如下。未能找到解决方案,自己删除了maven project然后重启操作系统,重建对应的maven project,启动居然成功,费解

 

ADD:

由于我们配置的svn地址是最顶层目录,所以每次都会将目录下的所有文件拉下来,为减少这种冗余,采用指定到具体的module下(默认只会拉module下的文件而不包含module文件夹),然后在此路径下添加local module directory子文件夹,在构建时指定其目录的pom文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值