centos 7.9安装tomcat,并实现开机自启

1、先安装jdk

这里以open-jdk11为例

复制代码
sudo yum install java-11-openjdk-devel -y

验证jdk的安装

复制代码
java -version
javac -version

确认输出显示安装了正确的 Java 版本。

2、创建 Tomcat 用户和组

创建一个专门用于运行 Tomcat 的系统用户,提高安全性。

复制代码
sudo groupadd tomcat
sudo useradd -M -s /bin/nologin -g tomcat tomcat
  • -M: 不创建家目录。
  • -s /bin/nologin: 禁止该用户登录 shell。
  • -g tomcat: 将该用户加入 tomcat 组。

3、下载并配置 Tomcat

将把 Tomcat 安装到 /opt/tomcat 目录下。

复制代码
cd /opt

4、下载tomcat包

访问官网,找到对应的版本进行下载,放到opt下,然后开始解压

复制代码
sudo tar -xf apache-tomcat-9.0.87.tar.gz

sudo mv apache-tomcat-9.0.87 tomcat

将 Tomcat 目录的所有权授予 tomcat 用户和组,并确保脚本可执行。

复制代码
sudo chown -R tomcat:tomcat /opt/tomcat
sudo sh -c 'chmod +x /opt/tomcat/bin/*.sh'

配置防火墙

Tomcat 默认监听 8080 端口。需要开放此端口以便外部访问。

复制代码
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload

5、创建 Systemd 服务实现开机自启

创建服务文件:

复制代码
sudo vi /etc/systemd/system/tomcat.service

粘贴以下内容到文件中:

(请注意 JAVA_HOME 的路径,确保与您安装的 Java 版本路径一致。如果安装的是 OpenJDK 1.8,通常路径是 /usr/lib/jvm/java-1.8.0-openjdk/usr/lib/jvm/jre-1.8.0-openjdk;如果是 OpenJDK 11,则是 /usr/lib/jvm/java-11-openjdk。)

复制代码
[Unit]
Description=Apache Tomcat Web Application Server
After=network.target

[Service]
Type=forking
User=tomcat
Group=tomcat
Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
# 如果您安装的是 Java 11,请修改为:
# Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk
Environment=CATALINA_PID=/opt/tomcat/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

重新加载 Systemd 配置:

复制代码
sudo systemctl daemon-reload

启动 Tomcat 服务:

复制代码
sudo systemctl start tomcat

检查 Tomcat 服务状态:

复制代码
sudo systemctl status tomcat

设置 Tomcat 开机自启:

复制代码
sudo systemctl enable tomcat

这会在系统启动时自动启动 Tomcat 服务。

相关推荐
码农学院29 分钟前
基于运维监控体系的网络品牌推广方案:从架构设计到技术实现
运维·网络
大耳朵-小飞象9 小时前
电力安全运维的智能密码:BACS如何破解设备全生命周期管理难题,让电网安全“看得见、管得住”?
运维·安全·智慧城市·能耗系统·楼宇智控·未来生活
极客侃科技10 小时前
制造企业 MES/APS 选型:SAP PP/DS 集成、ERP-MES 边界划分与一体化架构要点
运维·架构·制造
HLC++10 小时前
Linux的进程间通信
android·linux·服务器
二宝哥11 小时前
CentOS 7.9 系统下 Redis 5.0.4 单机安装与源码编译安装指南
redis·centos
华清远见IT开放实验室12 小时前
实验室建设案例 | 石家庄科技信息职业学院嵌入式实验室——从底层硬件到系统应用,一所应用型高校的嵌入式人才培养这样落地
linux·arm开发·stm32·嵌入式硬件·高校·实验室建设
生活爱好者!13 小时前
我把NAS当作下载机,docker一键部署qb
运维·docker·容器
groundhappy14 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
尽兴-14 小时前
企业业务系统架构选型与渐进式演进
运维·系统架构·devops
通信小小昕15 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu