tomcat部署jenkins-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
tomcat部署jenkins
1.简介
Jenkins是一个开源的自动化服务器工具用于持续集成和持续交付。它能够自动化构建、测试和部署软件项目提高开发团队的效率和软件质量。
jenkins就是一个整合工具把代码从git或者其他代码托管平台拉取过来然后通过脚本语言编写执行流程达到了项目一键启动的目的
准备工作
发布的包放到wabapps目录下
2.优缺点
优点
- 易于安装和配置Jenkins具有用户友好的界面易于安装和配置适用于各种项目。
- 可扩展性和灵活性Jenkins支持大量的插件和扩展可以根据需要添加自定义功能以适应不同的项目要求。
- 支持多种版本控制系统Jenkins能够与多种版本控制系统如Git、Subversion等集成方便代码管理和版本控制。
- 强大的可视化和报告功能Jenkins提供了丰富的可视化和报告工具方便开发团队实时监控构建和测试结果。
缺点
- 配置复杂Jenkins的配置涉及到许多参数和插件使用起来可能需要一定的学习和了解。
- 对硬件资源有一定要求Jenkins需要一定的硬件资源来保证并发构建的效率和稳定性。
3.工作原理
Jenkins的工作原理基于事件驱动的架构。当有代码提交或定时触发时Jenkins会触发任务的执行。任务主要通过插件实现如构建、测试、部署等。Jenkins会通过轮询或等待事件的方式检测代码仓库的变化并根据配置的规则和条件执行相应的操作。
4.工作流程
- 代码触发Jenkins会监听代码仓库的变化当有代码提交或定时触发时Jenkins会开始执行任务。
- 构建Jenkins会根据任务配置自动拉取代码执行构建操作如编译、打包等。
- 测试构建完成后Jenkins会执行配置的测试任务如单元测试、集成测试等。
- 部署如果测试通过Jenkins会根据配置将构建好的应用程序部署到目标环境。
- 反馈和报告Jenkins会生成构建日志、测试报告等相关信息并发送通知给相关人员。
- 循环Jenkins会定期监听代码仓库的变化并重复执行上述步骤。
5.所需环境说明
Jenkins是基于Java开发的因此需要安装Java运行环境JRE或JDK。此外Jenkins需要运行在支持Java的操作系统上如Windows、Linux和Mac等。具体的硬件需求取决于项目的规模和需求一般建议分配足够的内存、磁盘空间和网络带宽来保证Jenkins的正常运行。
6.CI/CD介绍
CI/CD是持续集成Continuous Integration与持续部署Continuous Deployment的缩写。
当涉及到持续集成与持续部署时以下是一些关键概念和优势
- 持续集成CI持续集成是一种开发实践要求开发人员经常将代码集成到共享代码仓库中。这通过自动化构建、自动化测试、代码静态分析等过程来实现。持续集成的优势包括减少集成问题、快速发现错误、增加团队协作。
- 持续部署CD持续部署是在持续集成完成后自动将应用程序部署到生产环境的过程。这可通过自动化构建、配置管理、发布工具等来实现。持续部署的优势包括减少人为错误、快速交付新功能、实现持续交付。
- 自动化测试持续集成和持续部署依赖于自动化测试来验证代码和应用程序的质量。自动化测试包括单元测试、集成测试、端到端测试等可以在每次代码提交或部署前运行。
- 自动化工具实现持续集成和持续部署需要使用各种自动化工具和平台。常见的工具包括持续集成服务器如Jenkins、Travis CI、配置管理工具如Ansible、Chef、容器化平台如Docker、Kubernetes等。
优势
- 加速发布持续集成和持续部署自动化了构建、测试和部署过程能够更快地交付新功能和修复bug。
- 减少风险自动化测试和验证过程可以快速发现问题并在早期阶段解决降低了发布潜在问题的风险。
- 提高代码质量频繁地进行集成和测试有助于发现和纠正代码质量问题促进团队合作。
- 提升团队效率自动化的CI/CD流程减少了手动重复工作使开发团队能够更集中地编写代码和解决问题。
综上所述持续集成与持续部署是一种有效的开发实践通过自动化构建、测试和部署来加速交付新功能降低发布风险并提高团队效率和代码质量。
7.实战
7.1.tomcat部署jenkins
环境说明
需要部署好tomcat服务详细步骤访问此网站
tomcat服务&&tomcat多实例部署
7.1.1.进入jenkins官网下载jenkins.war包
官网地址Jenkins
将jenkins.war包复制到/usr/local/tomcat/webapps/目录中并开启tomcat服务使jenkins.war包自动解压
[root@jenkins ~]# ls
anaconda-ks.cfg apache-tomcat-9.0.80.tar.gz jenkins.war
[root@jenkins ~]# cp jenkins.war /usr/local/tomcat/webapps/
[root@jenkins ~]# ls /usr/local/tomcat/webapps/
docs examples host-manager jenkins.war manager ROOT test
[root@jenkins ~]# /usr/local/tomcat/bin/catalina.sh start
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
[root@jenkins ~]# ls /usr/local/tomcat/webapps/
docs examples host-manager jenkins jenkins.war manager ROOT test
//查看端口
[root@jenkins ~]# ss -antl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 1 [::ffff:127.0.0.1]:8005 *:*
LISTEN 0 100 *:8080 *:*
LISTEN 0 128 [::]:22 [::]:*
部署jenkins需将java-1.8.0-openjdk删除安装java-17-openjdk
//将java-1.8.0-openjdk删除
[root@jenkins ~]# rpm -qa | grep openjdk
java-1.8.0-openjdk-headless-1.8.0.312.b07-2.el8_5.x86_64
java-1.8.0-openjdk-devel-1.8.0.312.b07-2.el8_5.x86_64
java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64
[root@jenkins ~]# rpm -e --nodeps java-1.8.0-openjdk-headless
[root@jenkins ~]# rpm -e --nodeps java-1.8.0-openjdk-devel
[root@jenkins ~]# rpm -e --nodeps java-1.8.0-openjdk
//安装java-17-openjdk
[root@jenkins ~]# yum -y install java-17-openjdk
省略 . . .
//重启tomcat服务
[root@jenkins ~]# /usr/local/tomcat/bin/catalina.sh stop
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[root@jenkins ~]# /usr/local/tomcat/bin/catalina.sh start
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
7.1.2.访问jenkins项目
[root@jenkins ~]# cat /root/.jenkins/secrets/initialAdminPassword
8062a842d81344a9b6be9b972d4c7bd7
部署成功
7.1.3.在jenkins页面中创建一个项目进行测试
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |