在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                        :::*             
相关推荐
缘的猿2 小时前
Kubernetes 四层负载均衡:Service核心原理与实战指南
java·kubernetes·负载均衡
半梦半醒*2 小时前
haproxy负载均衡
linux·运维·服务器·centos·负载均衡
黑马金牌编程2 小时前
总结一下MySQL数据库服务器性能优化的几个维度
服务器·数据库·mysql·性能优化
鼠鼠我捏,要死了捏2 小时前
Java Stream API性能优化实践指南
java·performance·stream api
间彧2 小时前
Windows server局域网内配置NTP时间同步
服务器
王嘉俊9252 小时前
Java面试宝典:核心基础知识精讲
java·开发语言·面试·java基础·八股文
ZNineSun2 小时前
第二章:Java到Go的思维转变
java·golang
白鲸开源2 小时前
(二)3.1.9 生产“稳”担当:Apache DolphinScheduler Worker 服务源码全方位解析
java·大数据·开源
wayuncn2 小时前
如何选择合适的服务器租用商?
运维·服务器