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进行下载即可。

好啦,快去尝试下吧~

相关推荐
落落落sss14 小时前
MybatisPlus
android·java·开发语言·spring·tomcat·rabbitmq·mybatis
henan程序媛2 天前
Jenkins Pipline流水线
运维·pipeline·jenkins
wudinaniya3 天前
使用rsync+jenkins实现服务自动部署全流程
运维·jenkins·自动化部署
程序员大金3 天前
基于SpringBoot+Vue+MySQL的校园招聘管理系统
java·vue.js·spring boot·后端·mysql·tomcat·intellij-idea
henan程序媛3 天前
jenkins项目发布基础
运维·gitlab·ansible·jenkins
小石潭记丶3 天前
elasticsearch设置账号和密码
大数据·elasticsearch·jenkins
刘重洋3 天前
解决nginx+tomcat宕机完美解决方案
nginx·tomcat·firefox
苦逼IT运维3 天前
正向代理与反向代理:原理、区别以及应用(Nginx 和 Tomcat)
运维·服务器·nginx·云原生·tomcat·devops
刘重洋3 天前
Tomcat监控与调优:比Tomcat Manager更加强大的Psi-Probe
java·tomcat·psi-probe监控
识途老码3 天前
Centos7安装Jenkins
运维·servlet·jenkins