CentOS 安装Tomcat

参考源

https://www.bilibili.com/video/BV187411y7hF?spm_id_from=333.999.0.0

版本

本文章基于 CentOS 7.6


这里使用解压缩方式安装 Tomcat

简介

这里的解压缩方式与 Windows 的解压缩方式是一个概念,都是将文件解压到指定文件夹然后运行。

这种方式相比 rpm 方式要繁琐一点,因为有解压缩这一步骤,但对系统的侵入性是最低的,因此一般也称为绿色安装

这里使用安装 Tomcat 作为示例。

操作

下载

官网下载:https://tomcat.apache.org/

这里选择 Tomcat 9 进行下载。

解压

将文件放到 /usr/home/sail/ 下。

[root@sail ~]# cd /home/sail
[root@sail sail]# ls
apache-tomcat-9.0.55.tar.gz  jdk-8u301-linux-x64.rpm

解压文件

[root@sail sail]# tar -zxvf apache-tomcat-9.0.55.tar.gz

解压后,可以看到 /usr/home/sail/ 下多了一个 tomcat 的文件夹。

[root@sail sail]# ls
apache-tomcat-9.0.55  apache-tomcat-9.0.55.tar.gz  jdk-8u301-linux-x64.rpm

运行

进入 bin 目录,和我们以前在 Windows 下看到的是一样的。

[root@sail apache-tomcat-9.0.55]# ls
bin  BUILDING.txt  conf  CONTRIBUTING.md  lib  LICENSE  logs  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  temp  webapps  work

运行 tomcat

在 Windows 下运行 Tomcat 使用 startup.bat 文件,Linux 则使用 startup.sh 文件运行。

[root@sail bin]# ./startup.sh
Using CATALINA_BASE:   /home/sail/apache-tomcat-9.0.55
Using CATALINA_HOME:   /home/sail/apache-tomcat-9.0.55
Using CATALINA_TMPDIR: /home/sail/apache-tomcat-9.0.55/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_301-amd64
Using CLASSPATH:       /home/sail/apache-tomcat-9.0.55/bin/bootstrap.jar:/home/sail/apache-tomcat-9.0.55/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

关闭

关闭 Tomcat 使用 shutdown.sh 文件。

[root@sail bin]# ./shutdown.sh
Using CATALINA_BASE:   /home/sail/apache-tomcat-9.0.55
Using CATALINA_HOME:   /home/sail/apache-tomcat-9.0.55
Using CATALINA_TMPDIR: /home/sail/apache-tomcat-9.0.55/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_301-amd64
Using CLASSPATH:       /home/sail/apache-tomcat-9.0.55/bin/bootstrap.jar:/home/sail/apache-tomcat-9.0.55/bin/tomcat-juli.jar
Using CATALINA_OPTS:   

卸载

rm -rf /home/sail/apache-tomcat-9.0.55
[root@sail sail]# ls
apache-tomcat-9.0.55.tar.gz  jdk-8u301-linux-x64.rpm

这样,Tomcat 就卸载完成了。

防火墙

查看

systemctl status firewalld

Tomcat 启动后,并不一定直接就能通过网页访问,还需要确认防火墙和安全组(针对云服务器)是否开启。


查看 firewall 服务状态。

[root@sail etc]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: active (running) since Sun 2021-11-21 21:28:35 CST; 2 months 0 days ago
     Docs: man:firewalld(1)
 Main PID: 5890 (firewalld)
    Tasks: 2
   Memory: 3.2M
   CGroup: /system.slice/firewalld.service
           └─5890 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

Jan 07 16:36:25 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t filter -C DOCKER-ISOLATION-STAGE-2 -o br-619a5845a105 -j DROP' failed: iptables: Bad rule (does a match...n that chain?).
Jan 07 16:36:26 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t nat -C DOCKER -p tcp -d 0/0 --dport 5000 -j DNAT --to-destination 172.18.0.2:5000 ! -i br-619a5845a105'...h by that name.
Jan 07 16:36:26 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t filter -C DOCKER ! -i br-619a5845a105 -o br-619a5845a105 -p tcp -d 172.18.0.2 --dport 5000 -j ACCEPT' f...n that chain?).
Jan 07 16:36:26 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t nat -C POSTROUTING -p tcp -s 172.18.0.2 -d 172.18.0.2 --dport 5000 -j MASQUERADE' failed: iptables: No ...h by that name.
Jan 07 17:09:05 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t nat -C DOCKER -p tcp -d 0/0 --dport 5000 -j DNAT --to-destination 172.18.0.2:5000 ! -i br-619a5845a105'...h by that name.
Jan 07 17:09:05 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t filter -C DOCKER ! -i br-619a5845a105 -o br-619a5845a105 -p tcp -d 172.18.0.2 --dport 5000 -j ACCEPT' f...n that chain?).
Jan 07 17:09:05 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t nat -C POSTROUTING -p tcp -s 172.18.0.2 -d 172.18.0.2 --dport 5000 -j MASQUERADE' failed: iptables: No ...h by that name.
Jan 07 17:23:35 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t nat -C DOCKER -p tcp -d 0/0 --dport 5000 -j DNAT --to-destination 172.18.0.3:5000 ! -i br-619a5845a105'...h by that name.
Jan 07 17:23:35 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t filter -C DOCKER ! -i br-619a5845a105 -o br-619a5845a105 -p tcp -d 172.18.0.3 --dport 5000 -j ACCEPT' f...n that chain?).
Jan 07 17:23:35 sail firewalld[5890]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables -w2 -t nat -C POSTROUTING -p tcp -s 172.18.0.3 -d 172.18.0.3 --dport 5000 -j MASQUERADE' failed: iptables: No ...h by that name.
Hint: Some lines were ellipsized, use -l to show in full.

开启

service firewalld start

以上表示没有开启防火墙,需要先开启防火墙。

[root@sail bin]# service firewalld start
Redirecting to /bin/systemctl start firewalld.service

开启后再次查看状态可以看到为激活状态。

关闭

service firewalld stop

[root@sail bin]# service firewalld stop
Redirecting to /bin/systemctl stop firewalld.service

重启

service firewalld restart

[root@sail bin]# service firewalld restart
Redirecting to /bin/systemctl restart firewalld.service

不管防火墙是关闭还是开启状态,都可以使用该命令重启。

确认防火墙开启后,还需要确定 Tomcat 对应的端口是否开启(Tomcat 默认 8080 端口)。

全部信息

firewall-cmd --list-all

[root@sail bin]# firewall-cmd --list-all
public
  target: default
  icmp-block-inversion: no
  interfaces: 
  sources: 
  services: ssh dhcpv6-client
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

如果仅仅是查看端口是可以不用查看全部信息的,用如下命令查看即可。

[root@sail bin]# firewall-cmd --list-ports

由此可以看出,防火墙是没有开启任何端口的。


开启 Tomcat 对应的端口。

[root@sail bin]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success

参数:

  • --zone:作用域
  • --add-port=8080/tcp:添加端口,格式为:端口/通讯协议
  • --permanent:永久生效,没有此参数重启后失效

开启端口后,需要重启防火墙。

[root@sail ~]# systemctl restart firewalld.service

重启后再次查看防火墙端口信息

[root@sail ~]# firewall-cmd --list-ports
8080/tcp

可以看到 8080 端口已开启。

安全组策略

确保 Linux 的防火墙端口是开启的,如果用的是阿里云的云服务器,还需要保证阿里云的安全组策略是开放的。

服务访问

在浏览器输入服务器地址加端口号即可访问 Tomcat 服务。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天航星

感谢你的鼓励和认可

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值