Tomcat 部署安装Jenkins

前言

Jenkins 是一款开源的持续集成工具,可以自动化地构建、测试和部署软件项目。它支持很多软件开发的工具和技术,如 Git、Subversion、Maven、Gradle 等,提供了很多插件来扩展其功能。

Jenkins 具有以下特点:

(1)开源免费:Jenkins 是一款免费的开源软件,任何人都可以下载和使用。

(2)易于安装和配置:Jenkins 的安装和配置非常简单,用户只需按照官方文档的指导即可。

(3)支持多种语言和技术:Jenkins 支持多种语言和技术,如 Java、Ruby、Python、PHP 等。

(4)支持持续集成和持续交付:Jenkins 支持持续集成和持续交付,可以自动化地构建、测试和部署软件项目。

(5)提供丰富的插件:Jenkins 提供了很多插件,用户可以根据自己的需要来选择和安装。

(6)可扩展性强:Jenkins 的可扩展性非常强,用户可以自定义插件和配置来扩展其功能。

总之,Jenkins 是一款非常优秀的持续集成工具,可以帮助开发者自动化地构建、测试和部署软件项目,提高软件开发的效率和质量。

不知道该下载Jenkins war包哪个版本请查看:https://mirrors.jenkins.io/war-stable/

本人下载的war包:https://mirrors.jenkins.io/war-stable/2.346.1/

点击Jenkins.war即可下载。

!!! 做本实验前请确保安装了Tomcat以及JDK。

目录

[1 配置](#1 配置)

[1.1 日志格式配置](#1.1 日志格式配置)

[1.2 优化JVM](#1.2 优化JVM)

[1.3 开启GC日志](#1.3 开启GC日志)

[1.4 开启JMX端口](#1.4 开启JMX端口)

[1.5 取消JVM的默认DNS缓存时间](#1.5 取消JVM的默认DNS缓存时间)

[2 部署安装Jenkins](#2 部署安装Jenkins)

[2.1 获取war包](#2.1 获取war包)

[2.2 上传war包](#2.2 上传war包)

[2.3 启动Tomcat](#2.3 启动Tomcat)

[2.4 浏览器访问](#2.4 浏览器访问)


1 配置

1.1 日志格式配置

开启Tomcat默认访问日志中RefererUser-agent记录。

【一旦出现安全问题能够更好的根据日志进行问题排查和解决】

以我的为例,我的Tomcat安装在application目录下。

复制代码
vi /application/tomcat/conf/server.xml

在%b后添加如下内容:

复制代码
%{Referer}i %{User-Agent}i %D" resolveHosts="false"

1.2 优化JVM

编辑catalina.sh配置文件。

复制代码
vi /application/tomcat/bin/catalina.sh

添加下列优化参数:

复制代码
JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m"

其中Xms为初始堆大小 (即jvm启动时分配的内存大小),Xmx为最大堆大小 (即jvm运行过程中分配的最大内存大小),我们一般将这两个值设置相同,建议均设为物理内存的一半(可以使用free -m命令查看),不能超过物理内存,以避免垃圾回收完成后jvm重新分配内存。

1.3 开启GC日志

(1)创建GC日志存放路径

复制代码
mkdir -p /data0/logs/

(2)编辑catalina.sh配置文件。

复制代码
vi /application/tomcat/bin/catalina.sh

在刚刚添加的优化参数后添加下列参数即可。

复制代码
-XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/data0/logs/gc-%t.log

-XX:+PrintGCDetails #查看 GC 详细信息

-XX:+PrintGCDateStamps #输出GC的时间戳(以日期的形式)

添加完毕后保存退出。

1.4 开启JMX端口

编辑catalina.sh配置文件。

在刚才优化参数下面添加下列内容:

复制代码
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=10086
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=192.168.10.123"

jmxremote.port #开启的监听端口,可自行定义。

jmxremote.authenticate #false表示监控不需要用户和密码。

jmxremote.ssl #是否表示需要认证,我们不需要认证。

hostname #主机名(必须是DNS可解析的主机名)。

1.5 取消JVM的默认DNS缓存时间

不缓存DNS记录,避免DNS解析更改后要重启JVM虚拟机。

在刚才优化参数下面添加下列内容:

复制代码
CATALINA_OPTS="$CATALINA_OPTS -Dsun.net.inetaddr.ttl=0 -Dsun.net.inetaddr.negative.ttl=0"

添加完毕后保存退出。

2 部署安装Jenkins

2.1 获取war包

Jenkins war包官方获取地址:https://www.jenkins.io/zh/download/

点击框内内容即可下载。

2.2 上传war包

将Jenkins war包上传到webapps目录下。

复制代码
cd /application/tomcat/webapps/
rm -rf *
rz

2.3 启动Tomcat

在Linux命令行界面中,切换到Tomcat的bin目录,执行**./startup.sh**

复制代码
/application/tomcat/bin/startup.sh

运行成功后webapps 目录下面会出现 jenkins

2.4 浏览器访问

复制代码
http://IP地址:8080/jenkins/

出现如图所示情况我们复制框内内容,使用cat命令查看。

复制代码
cat /root/.jenkins/secrets/initialAdminPassword

复制查询到的密码到管理员密码 ---> 点击继续

点击安装推荐的插件或者直接右上角关闭,进入Jenkins再安装也行。(安装时间过长建议直接关闭。)

这里我们点击安装推荐的插件

等待下载即可。下载完成后我们点击继续

可以直接点击使用admin账户继续或者填写创建管理员用户信息并点击保存并继续。

这里我选择使用admin账户继续

点击保存并完成

点击开始使用Jenkins

成功进入Jenkins!

我们可以点击左边的 Manage Jenkins下载一些你想安装的插件。

点击Manager Plugins

我们勾选自己想下载的插件并点击下方install without restart进行下载即可。

好啦,快去尝试下吧~

相关推荐
X1A0RAN20 小时前
Jenkins Pipeline 变量打印指南
运维·servlet·jenkins
heimeiyingwang21 小时前
【CI/CD·Jenkins篇】多节点构建:Agent 配置与任务分发策略
ci/cd·jenkins
heimeiyingwang2 天前
【CI/CD·Jenkins篇】环境搭建:从零部署 Jenkins 主从架构
ci/cd·jenkins
heimeiyingwang2 天前
【CI/CD·Jenkins篇】Pipeline 基础:Declarative 与 Scripted 语法详解
ci/cd·pipeline·jenkins
遨游DATA3 天前
Jenkins 修改 config.xml 后页面仍是旧配置:让 live job 配置真正生效
ci/cd·jenkins·devops·故障排查·config.xml
Dobby_053 天前
【CICD】Jenkins Pipeline 快速学习入门
运维·学习·jenkins
上海安当技术4 天前
统一身份认证平台怎么落地?11 个异构业务系统接入 ASP 的完整实施路径
数据库·servlet·架构·kubernetes·jenkins
回眸不遇5 天前
Elasticsearch嵌套类型nested使用指南
大数据·elasticsearch·jenkins
xxwl5855 天前
数据库后端接口测试报告
spring boot·mysql·tomcat
回眸不遇6 天前
类型的区别和应用场景 nested 每个对象独立存储为隐藏的子文档 适合存储数组 查询的时候有特定的语法 nested查询 且字段要 ...
运维·jenkins