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配置80端口访问8080及项目名地址方法解析
Mar 31 Servers
nginx配置文件使用环境变量的操作方法
Jun 02 Servers
Nginx使用Lua模块实现WAF的原理解析
Sep 04 Servers
Nginx+Tomcat负载均衡集群的实现示例
Oct 24 Servers
如何通过cmd 连接阿里云服务器
Apr 18 Servers
阿里云ECS云服务器快照的概念以及如何使用
Apr 21 Servers
在容器中使用nginx搭建上传下载服务器
May 11 Servers
apache虚拟主机配置的三种方式(小结)
Jul 23 Servers
Centos7 Shell编程之正则表达式、文本处理工具详解
Aug 05 Servers
Windows server 2016服务器基本设置
Aug 14 Servers
CentOS7设置ssh服务以及端口修改方式
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
php4的session功能评述(三)
2006/10/09 PHP
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
2010/02/08 PHP
php 获取页面中指定内容的实现类
2014/01/23 PHP
利用PHP访问带有密码的Redis方法示例
2017/02/09 PHP
PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例
2019/06/13 PHP
使用prototype.js进行异步操作
2007/02/07 Javascript
用javascript实现的支持lrc歌词的播放器
2007/05/17 Javascript
基于jquery的网站幻灯片切换效果焦点图代码
2013/09/15 Javascript
js日期对象兼容性的处理方法
2014/01/28 Javascript
JavaScript实现找出字符串中第一个不重复的字符
2014/09/03 Javascript
需要牢记的JavaScript基础知识
2016/09/25 Javascript
js实现加载更多功能实例
2016/10/27 Javascript
利用10行js代码实现上下滚动公告效果
2017/12/08 Javascript
vue.js 实现点击展开收起动画效果
2018/07/07 Javascript
Vue中函数防抖节流的理解及应用实现
2020/04/24 Javascript
[36:33]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.29
2020/12/02 DOTA
Python中集合类型(set)学习小结
2015/01/28 Python
Python装饰器原理与简单用法实例分析
2018/04/29 Python
Python图像处理之颜色的定义与使用分析
2019/01/03 Python
对python中list的拷贝与numpy的array的拷贝详解
2019/01/29 Python
Python3.x+pyqtgraph实现数据可视化教程
2020/03/14 Python
PyTorch中的拷贝与就地操作详解
2020/12/09 Python
WatchShop法国:英国排名第一的独立手表零售商
2020/02/17 全球购物
英国奢侈品在线精品店:Hervia
2020/09/03 全球购物
linux下进程间通信的方式
2014/12/23 面试题
《李时珍夜宿古寺》教学反思
2014/04/09 职场文书
探亲假请假条
2014/04/11 职场文书
党的群众路线教育实践方案
2014/05/11 职场文书
放弃遗产继承公证书
2015/01/26 职场文书
2015年综治宣传月活动总结
2015/03/25 职场文书
2015年度内部审计工作总结
2015/05/20 职场文书
小学教师教学反思
2016/02/24 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书
MySql开发之自动同步表结构
2021/05/28 MySQL
python基础之模块的导入
2021/10/24 Python
mysql数据插入覆盖和时间戳的问题及解决
2022/03/25 MySQL