在Linux中部署tomcat

在Linux中部署tomcat

一、关闭防火墙selinux(略)

powershell 复制代码
[root@stw ~]# systemctl status firewalld.service 
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@stw ~]# getenforce 
Disabled

二、安装java

powershell 复制代码
[root@stw ~]# cd /etc/yum.repos.d/
[root@stw yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
[root@stw yum.repos.d]# rm -rf *
[root@stw yum.repos.d]# vim server.repo
[root@stw yum.repos.d]# cat server.repo
[aa]
name=aa1
baseurl=file:///mnt
enabled=1
gpgcheck=0
[root@stw yum.repos.d]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only
[root@stw yum.repos.d]# cd
[root@stw ~]# yum -y install java-11-openjdk
[root@stw ~]# java -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
三、解压tomcat到/usr/local/目录下
powershell 复制代码
[root@stw ~]# ls
anaconda-ks.cfg               Documents             Music     Templates
apache-tomcat-10.0.23.tar.gz  Downloads             Pictures  Videos
Desktop                       initial-setup-ks.cfg  Public
[root@stw ~]# tar -xzf apache-tomcat-10.0.23.tar.gz -C /usr/local/
[root@stw ~]# cd /usr/local/
[root@stw local]# ls
apache-tomcat-10.0.23  bin  etc  games  include  lib  lib64  libexec  sbin  share  src
[root@stw local]# ln -s apache-tomcat-10.0.23/ tomcat
[root@stw local]# ll
total 0
drwxr-xr-x  9 root root 220 Sep 23 16:18 apache-tomcat-10.0.23
drwxr-xr-x. 2 root root   6 Apr 11  2018 bin
drwxr-xr-x. 2 root root   6 Apr 11  2018 etc
drwxr-xr-x. 2 root root   6 Apr 11  2018 games
drwxr-xr-x. 2 root root   6 Apr 11  2018 include
drwxr-xr-x. 2 root root   6 Apr 11  2018 lib
drwxr-xr-x. 2 root root   6 Apr 11  2018 lib64
drwxr-xr-x. 2 root root   6 Apr 11  2018 libexec
drwxr-xr-x. 2 root root   6 Apr 11  2018 sbin
drwxr-xr-x. 5 root root  49 Jul 23 11:56 share
drwxr-xr-x. 2 root root   6 Apr 11  2018 src
lrwxrwxrwx  1 root root  22 Sep 23 16:19 tomcat -> apache-tomcat-10.0.23/
四、自定义一个Hello World 的java测试网页
powershell 复制代码
[root@stw local]# cd tomcat/
[root@stw tomcat]# ls
bin           conf             lib      logs    README.md      RUNNING.txt  webapps
BUILDING.txt  CONTRIBUTING.md  LICENSE  NOTICE  RELEASE-NOTES  temp         work
[root@stw tomcat]# cd webapps/
[root@stw webapps]# ls
docs  examples  host-manager  manager  ROOT
[root@stw webapps]# cd ROOT/
[root@stw ROOT]# ls
asf-logo-wide.svg  bg-middle.png  bg-upper.png  index.jsp          tomcat.css  WEB-INF
bg-button.png      bg-nav.png     favicon.ico   RELEASE-NOTES.txt  tomcat.svg
//原来的网页存放在/usr/local/tomcat/webapps/ROOT/index.jsp

[root@stw ~]# mkdir /usr/local/tomcat/webapps/test
[root@stw ~]# cd /usr/local/tomcat/webapps/test
[root@stw test]# vim index.jsp
[root@stw test]# cat index.jsp
<html>
<head>
	<title>test page</title>
</head>
<body>
	<%
		out.println("Hello World");
	%>
</body>
</html>
五、启动tomcat(默认端口号为8080)

通过ps -ef | grep tomcat 可以查看到有java和tomcat的进程,说明服务已经启动成功

powershell 复制代码
[root@stw test]# cd /usr/local/tomcat/
[root@stw tomcat]# cd bin
[root@stw bin]# ls
bootstrap.jar                 configtest.bat  migrate.sh        tomcat-native.tar.gz
catalina.bat                  configtest.sh   setclasspath.bat  tool-wrapper.bat
catalina.sh                   daemon.sh       setclasspath.sh   tool-wrapper.sh
catalina-tasks.xml            digest.bat      shutdown.bat      version.bat
ciphers.bat                   digest.sh       shutdown.sh       version.sh
ciphers.sh                    makebase.bat    startup.bat
commons-daemon.jar            makebase.sh     startup.sh
commons-daemon-native.tar.gz  migrate.bat     tomcat-juli.jar
[root@stw 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.
[root@stw bin]# ss -anlt
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      128              *:111                          *:*                  
LISTEN     0      128              *:6000                         *:*                  
LISTEN     0      5      192.168.122.1:53                           *:*                  
LISTEN     0      128              *:22                           *:*                  
LISTEN     0      128      127.0.0.1:631                          *:*                  
LISTEN     0      100      127.0.0.1:25                           *:*                  
LISTEN     0      128      127.0.0.1:6010                         *:*                  
LISTEN     0      128             :::111                         :::*                  
LISTEN     0      100             :::8080                        :::*                  
LISTEN     0      128             :::6000                        :::*                  
LISTEN     0      128             :::22                          :::*                  
LISTEN     0      128            ::1:631                         :::*                  
LISTEN     0      100            ::1:25                          :::*                  
LISTEN     0      128            ::1:6010                        :::*                  
LISTEN     0      1         ::ffff:127.0.0.1:8005                        :::*                  
[root@stw bin]# ps -ef | grep tomcat
root      57632      1 22 16:28 pts/0    00:00:09 /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      57684   9768  0 16:29 pts/0    00:00:00 grep --color=auto tomcat
六、测试访问

扩展1:

1、访问Host Manager界面
(1)配置tomcat-users.xml文件,在</tomcat-users>行上面添加两行,设置角色,登录用户名和密码,角色名称只能是admin-gui 用户名和密码自定义
powershell 复制代码
[root@stw ~]# vim /usr/local/tomcat/conf/tomcat-users.xml
(2)配置host-manager/META-INF/context.xml文件,允许192.168.100.0/24网段访问,在allow字段后添加
powershell 复制代码
[root@stw ~]# vim /usr/local/tomcat/webapps/host-manager/META-INF/context.xml 
(3)重启服务,先关服务,再启服务
powershell 复制代码
[root@stw ~]# /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:   
^[[A[root@stw /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.
(4)登录网页测试登录Host Manager
输入对应的用户名和密码:用户名为tomcat,密码为123456
2、访问Server Status
(1)编辑tomcat-users.xml
powershell 复制代码
[root@stw ~]# vim /usr/local/tomcat/conf/tomcat-users.xml
(2)编辑manager/META-INF/context.xml,在allow字段添加允许192.168.100.0/24网段访问
powershell 复制代码
[root@stw ~]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml
(3)重启服务,先关服务,再启服务
powershell 复制代码
[root@stw ~]# /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:   
[root@stw ~]# /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.
(4)登录网页,访问Server Status,用户名tomcat 密码123456
访问Manager App的时候就不需要密码了,因为访问了Server Status界面,所以不用输入密码

扩展2:怎样运行一个jar包

(1)解压安装jdk-17
powershell 复制代码
[root@stw2 ~]# rz -E
rz waiting to receive.
[root@stw2 ~]# ls
anaconda-ks.cfg  Downloads                         Music     Templates
Desktop          initial-setup-ks.cfg              Pictures  Videos
Documents        jdk-17.0.15_linux-x64_bin.tar.gz  Public
[root@stw2 ~]# tar -zxf jdk-17.0.15_linux-x64_bin.tar.gz -C /usr/local
[root@stw2 ~]# cd /usr/local/
[root@stw2 local]# ls
bin  etc  games  include  jdk-17.0.15  lib  lib64  libexec  sbin  share  src
[root@stw2 local]# cd jdk-17.0.15/
[root@stw2 jdk-17.0.15]# ls
bin  conf  include  jmods  legal  lib  LICENSE  man  README  release
(2)更改配置文件
powershell 复制代码
[root@stw2 jdk-17.0.15]# vim /etc/profile
[root@stw2 jdk-17.0.15]# source /etc/profile
(3)将jar包(Spring_AI_Demo-0.0.1-SNAPSHOT.jar)下载到本地然后运行
查看8080端口是否启动判断是否运行成功
powershell 复制代码
[root@stw2 ~]# rz -E
rz waiting to receive.
[root@stw2 ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg              Public
Desktop          jdk-17.0.15_linux-x64_bin.tar.gz  Spring_AI_Demo-0.0.1-SNAPSHOT.jar
Documents        Music                             Templates
Downloads        Pictures                          Videos
[root@stw2 ~]# nohup java -jar Spring_AI_Demo-0.0.1-SNAPSHOT.jar &
[1] 10042
[root@stw2 ~]# nohup: ignoring input and appending output to 'nohup.out'

[root@stw2 ~]# ps -ef | grep java
root      10042   9830 60 18:19 pts/0    00:00:24 java -jar Spring_AI_Demo-0.0.1-SNAPSHOT.jar
root      10097   9830  0 18:19 pts/0    00:00:00 grep --color=auto java
[root@stw2 ~]# ss -anlt
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      128              *:111                          *:*                  
LISTEN     0      128              *:6000                         *:*                  
LISTEN     0      5      192.168.122.1:53                           *:*                  
LISTEN     0      128              *:22                           *:*                  
LISTEN     0      128      127.0.0.1:631                          *:*                  
LISTEN     0      100      127.0.0.1:25                           *:*                  
LISTEN     0      128      127.0.0.1:6010                         *:*                  
LISTEN     0      128             :::111                         :::*                  
LISTEN     0      100             :::8080                        :::*                  
LISTEN     0      128             :::6000                        :::*                  
LISTEN     0      128             :::22                          :::*                  
LISTEN     0      128            ::1:631                         :::*                  
LISTEN     0      100            ::1:25                          :::*                  
LISTEN     0      128            ::1:6010                        :::*             
相关推荐
晚枫歌F1 天前
Dpdk介绍
linux·服务器
李慕婉学姐1 天前
【开题答辩过程】以《基于JAVA的校园即时配送系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·开发语言·数据库
TH_11 天前
35、AI自动化技术与职业变革探讨
运维·人工智能·自动化
风送雨1 天前
FastMCP 2.0 服务端开发教学文档(下)
服务器·前端·网络·人工智能·python·ai
奋进的芋圆1 天前
Java 延时任务实现方案详解(适用于 Spring Boot 3)
java·spring boot·redis·rabbitmq
sxlishaobin1 天前
设计模式之桥接模式
java·设计模式·桥接模式
model20051 天前
alibaba linux3 系统盘网站迁移数据盘
java·服务器·前端
yuhaiqun19891 天前
学服务器训练AI模型:5步路径助力高效入门
运维·服务器·人工智能·笔记·机器学习·ai
huaweichenai1 天前
docker部署kkFileView实现文件预览功能
运维·docker·容器
荒诞硬汉1 天前
JavaBean相关补充
java·开发语言