各种系统下包安装+二进制安装Tomcat并配置为自启动

一.yum包安装Tomcat 

  • centos系统

1.安装相关软件包

[root@centos7 ~]#yum -y install tomcat tomcat-webapps tomcat-admin-webapps tomcat-docs-webapp

2.将服务设为自启动

[root@centos7 ~]#systemctl enable --now tomcat

Created symlink from/etc/systemd/system/multi-user.target.wants/tomcat.service

to/usr/lib/systemd/system/tomcat.service.

3.查看端口信息

[root@centos7 ~]# ss -ntl
State       Recv-Q Send-Q                 Local Address:Port                                Peer Address:Port              
LISTEN      0      128                                *:22                                             *:*                  
LISTEN      0      100                        127.0.0.1:25                                             *:*                  
LISTEN      0      100                             [::]:8009                                        [::]:*                  
LISTEN      0      100                             [::]:8080                                        [::]:*                  
LISTEN      0      128                             [::]:22                                          [::]:*                  
LISTEN      0      100                            [::1]:25                                          [::]:*                  
LISTEN      0      1                 [::ffff:127.0.0.1]:8005                                        [::]:* 

#CentOS 7 yum仓库源中自带的Tomcat 7.0版本安装,此方式安装tomcat版本较低,不推荐

  • rocky系统

1.安装相关软件包

[root@rocky8 ~]#yum -y install tomcat tomcat-admin-webapps tomcat-docs-webapp tomcat-webapps

2.将服务设为自启动

[root@rocky8 ~]#systemctl enable --now tomcat.service

3.查看端口信息

[root@rocky8 ~]# ss -ntl
State       Recv-Q Send-Q                 Local Address:Port                                Peer Address:Port              
LISTEN      0      128                                *:22                                             *:*                  
LISTEN      0      100                        127.0.0.1:25                                             *:*                  
LISTEN      0      100                             [::]:8009                                        [::]:*                  
LISTEN      0      100                             [::]:8080                                        [::]:*                  
LISTEN      0      128                             [::]:22                                          [::]:*                  
LISTEN      0      100                            [::1]:25                                          [::]:*                  
LISTEN      0      1                 [::ffff:127.0.0.1]:8005                                        [::]:* 

  • ubuntu系统

1.安装相关软件包

[root@ubuntu2204 ~]#apt update;apt -y install tomcat9 tomcat9-admin tomcat9- docs tomcat9-examples

#ubuntu系统安装服务会自动启动,无需手动启动

2.查看端口信息

[root@ubuntu2204 ~]#ss -ntl

State       Recv-Q Send-Q                 Local Address:Port                                Peer Address:Port              
LISTEN      0      128                                *:22                                             *:*                  
LISTEN      0      100                        127.0.0.1:25                                             *:*                  
LISTEN      0      100                             [::]:8009                                        [::]:*                  
LISTEN      0      100                             [::]:8080                                        [::]:*                  
LISTEN      0      128                             [::]:22                                          [::]:*                  
LISTEN      0      100                            [::1]:25                                          [::]:*                  
LISTEN      0      1                 [::ffff:127.0.0.1]:8005                                        [::]:* 

二.二进制安装Tomcat

注意: #安装tomcat 前必须先部署JDK

         #安装Tomcat之前先安装Java

  • centos系统下部署java环境

1.安装 java-11-openjdk

[root@tomcat ~]#yum -y install java-11-openjdk.x86_64

2.查看版本信息

[root@tomcat ~]# java -version
openjdk version "11.0.22" 2024-01-16 LTS
OpenJDK Runtime Environment (Red_Hat-11.0.22.0.7-1.el7_9) (build 11.0.22+7-LTS)
OpenJDK 64-Bit Server VM (Red_Hat-11.0.22.0.7-1.el7_9) (build 11.0.22+7-LTS, mixed mode, sharing)

  • ubuntu系统下部署java环境

1.更新并安装相关软件包

[root@ubuntu1804 ~]#apt update

[root@ubuntu1804 ~]#apt -y install openjdk-8-jdk

2.查看版本信息

[root@ubuntu1804 ~]#java -version

openjdk version "1.8.0_242"

OpenJDK Runtime Environment (build 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08)

OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)

  • 测试编译运行java程序

1.安装相关软件包

[root@centos7 ~]#dnf -y install java-1.8.0-openjdk-devel

2.编写java代码               

[root@centos8 ~]#cat Hello.java
class Hello{  
   public static void main(String[] args)
   {  
       System.out.println("hello, world");  
   }  
} 

3.编译成字节码

[root@centos7 ~]#javac Hello.java

[root@centos7 ~]#ll Hello.*

-rw-r--r-- 1 root root 416 Oct 24 13:00 Hello.class

-rw-r--r-- 1 root root 130 Aug 22 23:38 Hello.java

4.查看文件类型

[root@centos8 ~]#file Hello.class

Hello.class: compiled Java class data, version 52.0 (Java 1.8)

5.运行java程序

[root@centos8 ~]#java Hello

hello, world

  • 安装过程

1.下载源码

[root@centos7 ~]# wget

https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-10/v10.1.19/bin/apache-tomcat-10.1.19.tar.gz

2.解压

[root@centos7 ~]#tar xf apache-tomcat-10.1.19.tar.gz -C /usr/local

3.切换目录并创建软连接

[root@centos7 ~]# cd /usr/local/

[root@centos7 local]# ln -s apache-tomcat-10.1.19/ tomcat

4.指定PATH变量

[root@centos7 local]# echo 'PATH=/usr/local/tomcat/bin:$PATH' >/etc/profile.d/tomcat.sh
[root@centos7 local]# . /etc/profile.d/tomcat.sh

[root@centos7 local]# echo $PATH
/usr/local/tomcat/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

#查看当前变量设置和命令用法

[root@centos7 ~]#catalina.sh

#查看环境变量和版本信息

[root@centos7 ~]#catalina.sh version

5.启动Tomcat并查看端口

第一种方式:

[root@centos7 local]# 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@centos7 local]# 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@centos7 local]# ss -ntl
State       Recv-Q Send-Q                 Local Address:Port                                Peer Address:Port              
LISTEN      0      128                                *:22                                             *:*                  
LISTEN      0      100                        127.0.0.1:25                                             *:*                  
LISTEN      0      100                             [::]:8080                                        [::]:*                  
LISTEN      0      128                             [::]:22                                          [::]:*                  
LISTEN      0      100                            [::1]:25                                          [::]:*                  
LISTEN      0      1                 [::ffff:127.0.0.1]:8005                                        [::]:*    

6.关闭Tomcat并查看端口

第一种方式:

[root@centos7 local]# shutdown.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:   

第二种方式:

[root@centos7 local]# 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@centos7 local]# ss -ntl
State       Recv-Q Send-Q                 Local Address:Port                                Peer Address:Port              
LISTEN      0      128                                *:22                                             *:*                  
LISTEN      0      100                        127.0.0.1:25                                             *:*                  
LISTEN      0      128                             [::]:22                                          [::]:*                  
LISTEN      0      100                            [::1]:25                                          [::]:* 

三.tomcat目录结构

目录说明
bin服务启动、停止等相关程序和文件
conf配置文件

lib

库目录
logs日志目录
webapps应用程序,应用部署目录
workjsp编译后的结果文件,建议提前预热访问,升级应用后,删除此目录数据才能更新
  • work目录解析:

1.查看目录

[root@centos8 tomcat]#tree work/Catalina/localhost/

work/Catalina/localhost/

├── docs

├── examples

├── host-manager

├── manager

└── ROOT

5 directories, 0 files

2.访问tomcat服务端

[root@centos7 tomcat]#curl http://10.0.0.108:8080/

3.再次查看目录

#当访问过后,work目录中生成新文件

[root@centos8 tomcat]#tree work/Catalina/localhost/ work/Catalina/localhost/

├── docs

├── examples

├── host-manager

├── manager

└── ROOT  

└── org      

            └── apache          

                      └── jsp              

                               ├── index_jsp.class #字节码文件              

                               └── index_jsp.java  #servlet文件

#tomcat会自动的将jsp文件生成java源文件,再编译成class文件

[root@centos8 tomcat]#less

work/Catalina/localhost/ROOT/org/apache/jsp/index_jsp.java

/*

* Generated by the Jasper component of Apache Tomcat

* Version: Apache Tomcat/8.5.50

* Generated at: 2020-02-09 03:20:20 UTC

* Note: The last modified time of this file was set to

*       the last modified time of the source file after

*       generation to assist with modification tracking.

*/

package org.apache.jsp;

import javax.servlet.*;

import javax.servlet.http.*;

import javax.servlet.jsp.*;

public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase  

     implements org.apache.jasper.runtime.JspSourceDependent,                       org.apache.jasper.runtime.JspSourceImports {

private static final javax.servlet.jsp.JspFactory _jspxFactory =         javax.servlet.jsp.JspFactory.getDefaultFactory();

private static java.util.Map _jspx_dependants;

四.配置 tomcat 自启动的 service 文件

1.创建tomcat专用账户

[root@centos7 local]# useradd -r -s /sbin/nologin tomcat
useradd:用户“tomcat”已存在

#useradd -s:指定用户登录的shell

#/sbin/nologin:shell类型中的一种,作用是禁止用户登录

2.准备service文件中相关环境文件

[root@centos7 ~]#vim /usr/local/tomcat/conf/tomcat.conf

[root@centos7 ~]#cat /usr/local/tomcat/conf/tomcat.conf

#下面两个变量至少设置一项才能启动 tomcat

JAVA_HOME=/usr/local/jdk

JRE_HOME=/usr/local/jdk/jre

#如果不指定上面变量,/var/log/messages文件中会出现下面无法启动错误提示:

Mar 15 14:30:09 centos8 startup.sh[1530]: Neither the JAVA_HOME nor the JRE_HOME environment variable is defined Mar 15 14:30:09 centos8 startup.sh[1530]: At least one of these environment variable is needed to run this program

3.修改权限

[root@centos7 ~]#chown -R tomcat.tomcat /usr/local/tomcat/

#第1步和第3步的目的:为tomcat服务创建一个用户,禁止此用户登录,修改配置文件的属主和属组为tomcat用户,除管理员root外,其它用户将无法修改配置文件,提高了安全性

4.创建并配置tomcat.service文件

[root@centos7 ~]#vim /lib/systemd/system/tomcat.service

[root@centos8 ~]#cat /lib/systemd/system/tomcat.service

[Unit]

Description=Tomcat #After=syslog.target network.target remote-fs.target nss-lookup.target After=syslog.target network.target

[Service]

Type=forking

#以下二选一

EnvironmentFile=/usr/local/tomcat/conf/tomcat.conf

#或者,如果没有创建上面的/usr/local/tomcat/conf/tomcat.conf文件,可以加下面一行也可

Environment=JAVA_HOME=/usr/local/jdk ExecStart=/usr/local/tomcat/bin/startup.sh

ExecStop=/usr/local/tomcat/bin/shutdown.sh PrivateTmp=true User=tomcat Group=tomcat

[Install]

WantedBy=multi-user.target

5.重载配置

[root@centos7 ~]#systemctl daemon-reload

6.将tomcat服务设为自启动

[root@centos8 ~]#systemctl enable --now tomcat

Created symlink /etc/systemd/system/multi-user.target.wants/tomcat.service →

/usr/lib/systemd/system/tomcat.service.

7.查看服务状态

[root@centos7 ~]#systemctl status tomcat

● tomcat.service - Tomcat
   Loaded: loaded (/usr/lib/systemd/system/tomcat.service; enabled; vendor preset: disabled)
   Active: active (running) since 五 2022-12-09 00:27:55 CST; 21min ago
  Process: 1801 ExecStart=/usr/local/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 1815 (java)
   CGroup: /system.slice/tomcat.service
           └─1815 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logg...

12月 09 00:27:55 tomcat systemd[1]: Starting Tomcat...
12月 09 00:27:55 tomcat systemd[1]: Started Tomcat.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值