Ubuntu Server 安装Tomcat并配置systemctl


Posted in Servers onApril 28, 2022

软件环境

  • 系统版本:Ubuntu Server 18.04.1 LTS
  • JDK版本:Java SE Development Kit 8u231
  • Tomcat版本:Tomcat 9.0.27 Released

1.下载安装

由于JDK下载需要登录,用wget下载不方便,建议先在别的机子先下载好再拷贝到Ubuntu上。

将下载好的JDK压缩包解压到指定目录

tar -zxvf jdk-8u231-linux-x64.tar.gz -C ~/server

解压后的JDK所在目录是/home/ubuntu/server/jdk1.8.0_231

PS:由于Linux权限的问题,建议将JDK安装到不需要root权限的目录。我这里是在home下创建了server目录

2.配置JDK环境变量

如果没有安装vim,需要先安装

sudo apt-get install vim

使用vim编辑环境变量文件

sudo vi /etc/profile

在文件最后加入JDK的环境变量

#set Java environment
export JAVA_HOME=/home/ubuntu/server/jdk1.8.0_231
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

使环境变量生效

source /etc/profile

查看JDK版本

java -version
#结果
java version "1.8.0_231"
Java(TM) SE Runtime Environment (build 1.8.0_231-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode)

2 下载安装Tomcat

Tomcat下载不需要登录,可以直接用wget下载

wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.27/bin/apache-tomcat-9.0.27.tar.gz

解压到指定目录

tar -zxvf apache-tomcat-9.0.27.tar.gz ~/server

解压后的Tomcat所在目录是/home/ubuntu/server/apache-tomcat-9.0.27

PS:网上很多教程都说要为Tomcat配置环境变量,其实根本不需要

3 配置systemctl管理Tomcat服务

1.在tomcat的bin目录下创建setenv.sh文件

vi ~/server/apache-tomcat-9.0.27/bin/setenv.sh
#setenv.sh文件内容
CATALINA_PID="$CATALINA_BASE/tomcat.pid"

2.添加tomcat.service文件

sudo vi /lib/systemd/system/tomcat.service
#tomcat.service文件内容
[Unit]
Description=Tomcat
After=network.target remote-fs.target syslog.target
[Service]
Type=forking
PIDFile=/home/ubuntu/server/apache-tomcat-9.0.27/tomcat.pid
ExecStart=/home/ubuntu/server/apache-tomcat-9.0.27/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

3.重载systemctl守护进程

#重载守护进程
systemctl daemon-reload
#启动服务
sudo systemctl start tomcat
#停止服务
sudo systemctl stop tomcat
#重启服务
sudo systemctl restart tomcat
#开机自启动
sudo systemctl enable tomcat
#取消自启动
sudo systemctl disable tomcat

2019.11.13补充

在另外一台机器上安装的时候,启动Tomcat出现Neither the JAVA_HOME nor the JRE_HOME environment variable is defined,java的环境变量配置是正常的,但是就是说找不到。

解决方案:在Tomcat的目录下的bin/setclasspath.sh 文件的最上面加入java的环境变量

export JAVA_HOME=/home/ubuntu/server/jdk1.8.0_231
export JRE_HOME=$JAVA_HOME/jre

到此这篇关于Ubuntu Server 18.04 LTS 安装Tomcat并配置systemctl管理Tomcat服务的问题的文章就介绍到这了!


Tags in this post...

Servers 相关文章推荐
Nginx反向代理多个服务器的实现方法
Mar 31 Servers
Nginx+Tomcat负载均衡多实例详解
Apr 11 Servers
KVM基础命令详解
Apr 30 Servers
Tomcat配置访问日志和线程数
May 06 Servers
Zabbix对Kafka topic积压数据监控的问题(bug优化)
Jul 07 Servers
nginx七层负载均衡配置详解
Jul 15 Servers
windows server2016安装oracle 11g的图文教程
Jul 15 Servers
Docker容器harbor私有仓库部署和管理
Aug 05 Servers
keepalived + nginx 实现高可用方案
Dec 24 Servers
解决ubuntu安装软件时,status-code=409报错的问题
Dec 24 Servers
nginx sticky实现基于cookie负载均衡示例详解
Dec 24 Servers
Windows Server 2019 安装DHCP服务及相关配置
Windows Server 2019 域控制器安装图文教程
阿里云 Windows server 2019 配置FTP
Windows Server 2012 修改远程默认端口3389的方法
Windows Server 2008 修改远程登录端口以及配置防火墙
Windows Server 2019 配置远程控制以及管理方法
Windows Server 2016 配置 IIS 的详细步骤
You might like
PHP写入WRITE编码为UTF8的文件的实现代码
2008/07/07 PHP
php设计模式 Factory(工厂模式)
2011/06/26 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
2014/06/13 PHP
PHP中构造函数和析构函数解析
2014/10/10 PHP
Laravel路由设定和子路由设定实例分析
2016/03/30 PHP
jquery 获取json数据实现代码
2009/04/27 Javascript
jQuery中has()方法用法实例
2015/01/06 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
15款最好的Bootstrap在线编辑器
2016/08/03 Javascript
SVG描边动画
2017/02/23 Javascript
简单的JS控制button颜色随点击更改的实现方法
2017/04/17 Javascript
深入探究node之Transform
2017/07/20 Javascript
webpack公共组件引用路径简化小技巧
2018/06/15 Javascript
微信小程序获取音频时长与实时获取播放进度问题
2018/08/28 Javascript
Preload基础使用方法详解
2020/02/03 Javascript
React实现轮播效果
2020/08/25 Javascript
Python获取远程文件大小的函数代码分享
2014/05/13 Python
Python金融数据可视化汇总
2017/11/17 Python
Python使用requests发送POST请求实例代码
2018/01/25 Python
python使用锁访问共享变量实例解析
2018/02/08 Python
python实现超市扫码仪计费
2018/05/30 Python
python如何获取列表中每个元素的下标位置
2019/07/01 Python
Python面向对象之私有属性和私有方法应用案例分析
2019/12/31 Python
Python 调用 ES、Solr、Phoenix的示例代码
2020/11/23 Python
Pytorch之扩充tensor的操作
2021/03/04 Python
CSS3中Animation动画属性用法详解
2016/07/04 HTML / CSS
CSS3实现文本垂直排列的方法
2018/07/10 HTML / CSS
HTML5 WebSocket实现点对点聊天的示例代码
2018/01/31 HTML / CSS
塑料制成的可水洗的编织平底鞋和鞋子:Rothy’s
2018/09/16 全球购物
《夏夜多美》教学反思
2014/02/17 职场文书
表彰大会主持词
2014/03/26 职场文书
高中课前三分钟演讲稿
2014/08/18 职场文书
基层党员群众路线教育实践活动个人对照检查材料思想汇报
2014/10/05 职场文书
街道党风廉政建设调研报告
2015/01/01 职场文书
如何自己动手写SQL执行引擎
2021/06/02 MySQL
OpenCV图像变换之傅里叶变换的一些应用
2021/07/26 Python