尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

详细介绍:Jenkins

详细介绍:Jenkins
📅 发布时间:2026/6/20 11:51:51

Jenkins

一、使用tomcat容器安装jenkins

1、部署tomcat,tomcat下载https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat,此时下载9.0版本的,10版本部署有bug,无法实现。

先要卸载centos7中自带得jdk

[root@ws ~]# rpm -qa | grep java
python-javapackages-3.4.1-11.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.181-7.b13.el7.x86_64
tzdata-java-2018e-3.el7.noarch
java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64
javapackages-tools-3.4.1-11.el7.noarch
[root@ws ~]# rpm -e java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64 --nodeps
[root@ws ~]# rpm -e java-1.8.0-openjdk-headless-1.8.0.181-7.b13.el7.x86_64 --nodeps

//部署网络源

//时钟同步

//安装jdk

[root@ws yum.repos.d]# yum -y install java-11-openjdk

//解压tomcat,并部署安装

[root@ws local]# tar -xzvf apache-tomcat-9.0.67.tar.gz -C /usr/local/
[root@ws ~]# cd /usr/local/
[root@ws local]# ls
apache-tomcat-9.0.67  bin  etc  games  include  lib  lib64  libexec  sbin  share  src
[root@ws local]# ln -s apache-tomcat-9.0.67/ tomcat

//启动tomcat,测试能否访问tomcat首页

[root@ws tomcat]#  bin/startup.sh
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.

在这里插入图片描述

1、部署jenkins

//下载jenkins到/usr/local/tomcat/webapps/目录下

//下载下来后会自动解压

//启动服务

[root@ws 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@ws 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@ws tomcat]# cd webapps/
[root@ws webapps]# ls
docs  examples  host-manager  jenkins  jenkins.war  manager  ROOT
[root@ws webapps]#

//浏览器访问jenkins

在这里插入图片描述

//查看上图框出来的文件,该文件中记录这密码,复制密码并登录

[root@ws webapps]# cat /root/.jenkins/secrets/initialAdminPassword
6e75422e88de464587840ca4ec2be037

在这里插入图片描述

3、自定义jenkins

//选择插件来安装

在这里插入图片描述

//选择无,进行安装,后期需要什么插件就安装什么插件

在这里插入图片描述

//创建管理员用户admin,密码为admin

在这里插入图片描述

//此时登录进去是英文界面,我们进行替换国内源

在这里插入图片描述

//点击 Advanced —> 更新为国内源 —> Submit

原国外插件源地址:https://updates.jenkins.io/update-center.json

国内插件源地址:https://mirrors.huaweicloud.com/jenkins/updates/update-center.json

在这里插入图片描述

//安装简体中文插件

在这里插入图片描述

//安装Git GitHub GitLab Gitee插件

安装完成后,会重启jenkins

在这里插入图片描述

在这里插入图片描述

Jenkins流水线项目发布流程

主机名称 ip地址 需要的应用服务 工具包 系统

ansible 192.168.110.110 tomcat、jenkins git maven RHEL9

app 192.168.110.66 tomcat 无 RHEL9

1、关闭防火墙和selinux

2、在node1上部署服务tomcat和jenkins(上面已经部署),重新部署,登录web界面时选择安装推荐的插件,部署好后,设置国内源

3 配置yum源

[root@absible yum.repos.d]# cat server.repo
[baseos]
name=baseos
baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/BaseOS/x86_64/os/
enabled=1
gpgcheck=0
[appstream]
name=app
baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/AppStream/x86_64/os/
enabled=1
gpgcheck=0

在这里插入图片描述

3、先在ansible主机上生成一个密钥,传给app主机

[root@absible ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.110.66
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.110.66 (192.168.110.66)' can't be established.
ED25519 key fingerprint is SHA256:Vx2iAClKk4iu5uccKPyvHZ0Qc0E179q28tXIIWNvxUM.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.110.66's password:
Number of key(s) added: 1
Now try logging into the machine, with:   "ssh 'root@192.168.110.66'"
and check to make sure that only the key(s) you wanted were added.

4、在app上部署tomcat

略

5、在ansible中配置jenkins

//创建任务

在这里插入图片描述

//创建流水线任务

在这里插入图片描述

发布流水线的方法我在这里给大家介绍两种,一种是脚本的方式,一种是使用文本参数的方式

首选都需要在jinkins所在服务器,也就是ansible中安装git和maven

[root@absible ~]#  yum -y install git
[root@absible ~]# yum -y install maven-openjdk11.noarch

https://github.com/devopsbyhari/JenkinsTomcatExample.git

第一种方法:使用脚本

pipeline {

agent any

stages {

stage(‘pull code’) {

steps {

git ‘https://github.com/devopsbyhari/JenkinsTomcatExample.git’

}

}

}

}

在这里插入图片描述

在这里插入图片描述

//绿色为构建成功

在这里插入图片描述

//添加第二部分脚本执行

pipeline {
agent any

stages {
stage(‘pull code’) {
steps {
git ‘https://github.com/devopsbyhari/JenkinsTomcatExample.git’
}
}
stage(‘package’) {
steps {
sh “”"
mvn clean
mvn package
“”"
}
}
}
}

​

//再次进行构建--此时构建时间非常长

第二次构建就是为了安装软件包,生成站点,站点

/root/.jenkins/workspace/test/target/目录下,通过日志文件可以看到

该目录下就有个压缩文件为java-tomcat-maven-example.war

//第三次构建的时候,就是需要把这个文件使用scp的方式发送给app的tomcat中

pipeline {
agent any

stages {stage('pull code') {steps {git 'https://github.com/devopsbyhari/JenkinsTomcatExample.git'}}stage('package') {steps {sh """mvn cleanmvn package"""}}stage('deploy') {steps {sh """scp target/java-tomcat-maven-example.war root@192.168.110.66:/usr/local/tomcat/webapps/ssh root@192.168.110.66 '/usr/local/tomcat/bin/catalina.sh stop && /usr/local/tomcat/bin/catalina.sh start'"""}}
}

}

此时我们去app中的去验证

[root@app ~]# cd /usr/local/tomcat/webapps/
[root@app webapps]# ls
docs  examples  host-manager  java-tomcat-maven-example  java-tomcat-maven-example.war  manager  ROOT
[root@app webapps]#

//访问app的tomcat

在这里插入图片描述

//能够成功访问该页面,说明我们此次jenkins流水线项目部署成功

第二种方法呢,就是通过文本参数来实现流水线项目发布

为了实验效果呢,我们首先把app中刚刚接收到的站点给删除掉

//新建流水线项目lq

在这里插入图片描述

//添加文本参数

在这里插入图片描述

//添加git下载信息https://github.com/devopsbyhari/JenkinsTomcatExample.git

在这里插入图片描述

//添加字符参数,打包

在这里插入图片描述

//添加字符参数 定义tomcat路径

在这里插入图片描述

//添加文本参数 定义客户端ip

在这里插入图片描述

//编写流水线脚本

pipeline {
agent any

stages {stage('pull code') {steps {git "${git_url}"}}stage('package') {steps {sh """mvn cleanmvn package"""}}stage('deploy') {steps {sh """scp target/${maven_package}.war root@${client_ip}:${tomcat_path}/webapps/ssh root@${client_ip} '${tomcat_path}/bin/catalina.sh stop && ${tomcat_path}/bin/catalina.sh start'"""}}
}

}

//刚刚定义好的变量参数值

//构建

在这里插入图片描述

//验证

在这里插入图片描述

相关新闻

  • 2025年工业冷风机能效等级TOP5对比,铁皮房车间降温/陶瓷车间降温/注塑车间通风降温/家具厂车间通风降温工业冷风机供应商哪家好
  • 口碑好的博山电机公司推荐榜单?博山电机品牌 博山电机公司 博山电机工厂 博山电机厂家 博山电机厂商 博山电机生产厂家
  • 2025北京装修改造公司TOP5权威推荐:佳时特装修改造

最新新闻

  • 200+专业动作库:如何为你的游戏角色注入生命力
  • 大平层装修选购指南:如何挑选靠谱设计与装修服务 - 速递信息
  • 如何用Nucleus Co-Op实现单机游戏4人分屏:技术原理与实战配置指南
  • developer-portfolio 扩展指南:添加博客、作品集和联系表单
  • 2026扬州大平层定制怎么选不踩坑 爱格授权本地品牌该怎么辨别 - 十大品牌排行榜
  • 2026年扬州全屋定制持证爱格授权门店合集 - 高定

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号