【CentOS8】使用 Tomcat 部署 Java Web 项目(使用 sdkman)
2023-12-13 09:45:13
我是使用
sdkman
下载的
jdk
和
tomcat
,所以接下来的部署配置都是在
sdkman
构建的环境的。想要知道如何下载
sdkman
可以看看这篇文章 —
使用 SDKMAN 管理多版本本地 Java 环境—Centos8 & Windows
配置 Tomcat
# 下载 tomcat
sdk install tomcat xxx
# 授予权限
sudo chmod -R 775 /root/.sdkman/candidates/tomcat/
# 启动 tomcat--cenrrent 目录下
bin/startup.sh
# 将出现
Using CATALINA_BASE: /root/.sdkman/candidates/tomcat/current
Using CATALINA_HOME: /root/.sdkman/candidates/tomcat/current
Using CATALINA_TMPDIR: /root/.sdkman/candidates/tomcat/current/temp
Using JRE_HOME: /root/.sdkman/candidates/java/current
Using CLASSPATH: /root/.sdkman/candidates/tomcat/current/bin/bootstrap.jar:/root/.sdkman/candidates/tomcat/current/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
# 本地访问默认为(有开启防火墙需要关闭防火墙或者开放 8080 端口) 8080-即本地 ip + :8080
# 关闭 tomcat--cenrrent 目录下
bin/shutdown.sh
这个时候我们就可以通过虚拟机 ip:8080
就可以看到 tomcat
服务的默认页面了
出现这个页面就算成功了。
将 Tomcat 启动命令设置为 Linux 自定义服务
不过,现在的 tomcat
需要我们自己到 tomcat
目录下使用它的 startup.sh
和 shutdown.sh
进行启动和关闭,这就很麻烦,所以我们接下来就将 tomcat
在 centos 中进行设置为 service 服务。
在 /etc/init.d/
目录下新建文件,命名为 tomcat
touch /etc/init.d/tomcat
将以下内容粘贴到 tomcat 文件中
#!/bin/bash
# description: Tomcat7 Start Stop Restart
# processname: tomcat7
# chkconfig: 234 20 80
JAVA_HOME=/root/.sdkman/candidates/java/current
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/root/.sdkman/candidates/tomcat/current
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
保存后设置 tomcat 的文件属性,将 tomcat 修改为可运行的文件
chmod a+x tomcat
# 设置服务运行级别
chkconfig --add tomcat
# 查看自定义服务
chkconfig --list
# 将出现
tomcat 0:关 1:关 2:开 3:开 4:开 5:关 6:关
# 可使用命令
service tomcat start
service tomcat stop
service tomcat restart
# 或则使用
systemctl start tomcat
systemctl stop tomcat
systemctl status tomcat
查看状态是这样的就算成功了!
给 Tomcat 设置管理员账号密码
完成这个操作以后,我们回到 tomcat
本身上来。一般来说,tomcat
管理页面是进不去的,这是因为我们还没有配置管理员账号密码。
# 停止 tomcat 服务
systemctl stop tomcat
# 修改配置文件
vi /current/conf/tomcat-users.xml
# 可以看到该文件基本上都是注释,我们只需要在最后(最后一个标签里)以下代码:
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin" roles="admin-gui,admin,manager-gui,manager,manager-script,manager-jmx,manager-status"/>
# 进入 webapps/manager/META-INF/context.xml
# 注释以下内容
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
# 启动服务
systemctl start tomcat
tomcat-users.xml
修改后应该是这样的:
context.xml
修改后应该是这样的
配置完成后,我们再次点击进去没有错误,显示这样的就没有错误
IDEA 打包 Java web 项目
在 IDEA 中打开需要部署的项目,这里需要注意下:本地 tomcat
的端口需要和虚拟机上的 tomcat
开放的端口一致,我这里因为我虚拟机中开放的端口是 8080
,所以我在 IDEA 直接配置 8080 端口了。
配置好端口以后,接下来就直接打包项目了
选择以后会弹出一个选择框
打包以后会生成一个压缩包,这个就是我们打包以后的产物
将这个压缩包复制到虚拟机中的 webapps
中即可
然后刷新一下 tomcat
服务页面,就可以看见我们刚才上传的打包产物了
最后,进入这个路径检查一下
成功!
文章来源:https://blog.csdn.net/fans_x/article/details/134829534
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!