tomcat部署
部署tomcat
安装jdk环境
[root@localhost ~]# yum install java-17-openjdk* -y
下载tomcat软件包
tomcat官网
下载tomcat软件包
[root@localhost ~]# wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.65/bin/apache-tomcat-9.0.65.tar.gz
//解压
[root@localhost ~]# ls
anaconda-ks.cfg apache-tomcat-9.0.65.tar.gz
[root@localhost ~]# tar -xf apache-tomcat-9.0.65.tar.gz -C /usr/local/
[root@localhost ~]# cd /usr/local/
[root@localhost local]# mv apache-tomcat-9.0.65/ tomcat
[root@localhost local]# cd tomcat/
[root@hostlocal tomcat]# ll
总用量 128
drwxr-x--- 2 root root 4096 8月 17 22:09 bin
-rw-r----- 1 root root 19992 7月 14 20:28 BUILDING.txt
drwx------ 2 root root 238 7月 14 20:28 conf
-rw-r----- 1 root root 6210 7月 14 20:28 CONTRIBUTING.md
drwxr-x--- 2 root root 4096 8月 17 22:09 lib
-rw-r----- 1 root root 57092 7月 14 20:28 LICENSE
drwxr-x--- 2 root root 6 7月 14 20:28 logs
-rw-r----- 1 root root 2333 7月 14 20:28 NOTICE
-rw-r----- 1 root root 3398 7月 14 20:28 README.md
-rw-r----- 1 root root 6901 7月 14 20:28 RELEASE-NOTES
-rw-r----- 1 root root 16505 7月 14 20:28 RUNNING.txt
drwxr-x--- 2 root root 30 8月 17 22:09 temp //临时文件
drwxr-x--- 7 root root 81 7月 14 20:28 webapps //存放应用 软件 网页
drwxr-x--- 2 root root 6 7月 14 20:28 work
写一个java页面
[root@hostlocal ~]# mkdir /usr/local/tomcat/webapps/test
[root@hostlocal ~]# cd /usr/local/tomcat/webapps/test
[root@hostlocal test]# vim index.jsp
<html>
<head>
<title>test page</title>
</head>
<body>
<%
out.println("Hellow World");
%>
</body>
</html>
启动tomcat
[root@hostlocal ~]# echo 'export PATH=/usr/local/tomcat/bin/:$PATH' > /etc/profile.d/tomcat.sh
[root@hostlocal ~]# source /etc/profile.d/tomcat.sh
[root@hostlocal ~]# 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@hostlocal ~]# ss -antl
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 32 192.168.122.1:53 0.0.0.0:*
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 128 0.0.0.0:111 0.0.0.0:*
LISTEN 0 128 [::]:22 [::]:*
LISTEN 0 1 [::ffff:127.0.0.1]:8005 *:*
LISTEN 0 128 [::]:111 [::]:*
LISTEN 0 100 *:8080 *:*
[root@hostlocal ~]# ps -ef|grep tomcat
root 139811 1 1 22:18 pts/0 00:00:04 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root 161781 3778 0 22:25 pts/0 00:00:00 grep --color=auto tomcat
[root@localhost ~]# systemctl disable --now firewalld.service //关闭防火墙
[root@localhost ~]# setenforce 0 //关闭selinux
web网页
加上测试目录
[root@hostlocal ~]# cd /usr/local/tomcat/
[root@hostlocal tomcat]# cd logs/
[root@hostlocal logs]# ll
总用量 24
-rw-r----- 1 root root 6905 8月 17 22:18 catalina.2022-08-17.log
-rw-r----- 1 root root 7176 8月 17 22:18 catalina.out
-rw-r----- 1 root root 0 8月 17 22:18 host-manager.2022-08-17.log
-rw-r----- 1 root root 414 8月 17 22:18 localhost.2022-08-17.log
-rw-r----- 1 root root 907 8月 17 22:29 localhost_access_log.2022-08-17.txt
-rw-r----- 1 root root 0 8月 17 22:18 manager.2022-08-17.log
tomcat之web界面
Sever status对应的是/usr/local/tomcat/webapps/ROOT
Manager App对应的是/usr/local/tomcat/webapps/manager
Host Manager对应的是/usr/local/tomcat/webapps/host-manager
无法使用Server Status
若想使用Server Status的话就需要配置
[root@hostlocal ~]# vim /usr/local/tomcat/conf/tomcat-users.xml //添加下面49、50两行内容
48 -->
49 <role rolename="manager-gui"/>
50 <user username="tomcat" password="tomcat" roles="manager-gui"/>
51 <!--
[root@localhost ~]# catalina.sh stop //重启服务让其生效
[root@localhost ~]# catalina.sh start
[root@hostlocal ~]# cd /usr/local/tomcat/webapps/manager/META-INF/
[root@hostlocal META-INF]# ls
context.xml
[root@hostlocal META-INF]# vim context.xml
22 allow="192\.168\.170\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> //添加192\.168\.170\.\d+|
(//因为这里的“.”是有特殊意义的所以我们使用\进行转义,而d表示数字,+是至少一个数字)
刷新页面,输入用户名和密码
在此页面可以禁止某个功能。
点击应用服务器列表
如果想停止刚才的hello world这个界面访问那就点击停止按钮
这个地方是服务器的状态,在服务器状态里面可以看到JVM的信息,JVM就是Java的虚拟机
解决host manager访问失败
[root@localhost ~]# vim /usr/local/tomcat/conf/tomcat-users.xml
48 -->
49 <role rolename="admin-gui"/>
50 <user username="tomcat" password="tomcat" roles="admin-gui"/>
51
52 <role rolename="manager-gui"/>
53 <user username="tomcat" password="tomcat" roles="manager-gui"/>
54 <!--
[root@localhost ~]# catalina.sh stop //重启服务让其生效
[root@localhost ~]# catalina.sh start
//放行ip
[root@hostlocal ~]# vim /usr/local/tomcat/webapps/host-manager/META-INF/context.xml
22 allow="192\.168\.170\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
基于tomcat部署Jenkins部署
jenkins
Jenkins概念
Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。
Jenkins特性:
开源的java语言开发持续集成工具,支持CI,CD;
易于安装部署配置:可通过yum安装,或下载war包以及通过docker容器等快速实现安装部署,可方便web界面配置管理;
消息通知及测试报告:集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告;
分布式构建:支持Jenkins能够让多台计算机一起构建/测试;
文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等;
丰富的插件支持:支持扩展插件,你可以开发适合自己团队使用的工具,如git,svn,maven,docker
下载稳定版
部署jenkins
[root@hostlocal webapps]# mv * /opt/ //清理webapps目录
[root@hostlocal webapps]# ls //将jenkins的包导入到webapps目录内
jenkins.war
[root@localhost webapps]# catalina.sh stop //重启
[root@localhost webapps]# catalina.sh start
[root@hostlocal webapps]# cd
[root@hostlocal ~]# cd /usr/local/tomcat/webapps/
[root@hostlocal webapps]# ls //jenkins会自动解压
jenkins jenkins.war
等待一段时间
密码位置:
[root@hostlocal ~]# cat /root/.jenkins/secrets/initialAdminPassword
b7f38629ac1445899aab9acc38ccdd39