CentOS7安装Tomcat
一.二进制包安装Tomcat
1.下载解压二进制包
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.32/bin/apache-tomcat-8.5.32.tar.gz
tar zxvf apache-tomcat-8.5.32.tar.gz -C /usr/local/
cd /usr/local/
ln -s /usr/local/apache-tomcat-8.5.32 /usr/local/tomcat # 创建软连接
2.关闭SELinux
setenforce 0 # 临时关闭
sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config # 永久关闭
3.防火墙开启8080端口
iptables -I INPUT -p tcp --dport 8080 -j ACCEPT # 临时生效
/etc/init.d/iptables save # 保存到配置文件,永久生效
/etc/init.d/iptables status # 查看iptables当前状态
4.启动tomcat进程
/usr/local/tomcat/bin/startup.sh
5.查看tomcat进程
ps -ef|grep tomcat
6.查看tomcat进程对应的端口是否成功启动
lsof -i:8080
7.测试是否能成功访问
curl http://localhost:8080
http://192.168.164.134:8080/
8.编写jsp测试程序
cat > /usr/local/tomcat/webapps/ROOT/test.jsp << eof
<html>
<head>
<title>Hello World</title>
</head>
<body>
<%
out.println("Hello World!");
%>
</body>
</html>
eof
#通过浏览器访问test.jsp
http://192.168.164.134:8080/test.jsp
9.以普通用户身份运行tomcat(jsvc方式运行tomcat)
通过/usr/local/tomcat/bin/startup.sh脚本启动tomcat,如果需要让tomcat监听80端口就必须使用root用户来运行此脚本,这样在安全上存在风险。jsvc是daemon模式来启动tomcat的程序,可以在普通用户下打开80端口。
9.1 创建tomcat启动用户
#创建tomcat用户组和用户
getent group tomcat || groupadd -r tomcat
#这里的tomcat用户没有登录权限,如果需要su切换到tomcat启动,则需要设置-s为/bin/bash
getent passwd tomcat || useradd -r -d /usr/local/tomcat -s /sbin/nologin -g tomcat tomcat
#设置tomcat用户组和用户的目录权限
chown -R tomcat:tomcat /usr/local/tomcat
9.2 配置tomcat环境变量
cat > /etc/profile << eof
#set tomcat environment
export CATALINA_HOME=/usr/local/tomcat
export CATALINA_BASE=/usr/local/tomcat
export PATH=$PATH:$CATALINA_HOME/bin
eof
#使用新加的环境变量立即生效
source /etc/profile
9.3 创建setenv.sh,增加启动参数
#在 tomcat/bin 目录下面,增加 setenv.sh
cat > /usr/local/tomcat/bin/setenv.sh << eof
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/logs/tomcat.pid"
#add java opts
JAVA_OPTS="-server -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
eof
9.4 安装jsvc
cd /usr/local/tomcat/bin/
tar zxvf commons-daemon-native.tar.gz
cd commons-daemon-1.1.0-native-src/unix/
./configure --with-java=/usr/java/jdk #这里需要gcc、make等编译工具,可以yum -y groupinstall "Development Tools"安装
make
cp jsvc /usr/local/tomcat/bin/
9.5 设置启动脚本
ln -s /usr/local/tomcat/bin/daemon.sh /etc/init.d/tomcat #设置软链接
vi /etc/init.d/tomcat
#在第二行添加
# chkconfig: 2345 85 15
# description: Tomcat daemon
#set java home
JAVA_HOME=/usr/java/jdk
# 保存退出
#需要设置其中的TOMCAT_USER=tomcat,JAVA_HOME=/usr/java/jdk
#每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
#前台启动tomcat
/etc/init.d/tomcat run
#启动tomcat
/etc/init.d/tomcat start
#设置开机自启动
chkconfig --add tomcat
9.6 使用systemctl来管理tomcat
#查看tomcat状态
systemctl status tomcat.service
#启动tomcat
systemctl start tomcat.service
#设置tomcat开机自启动
systemctl enable tomcat.service
#重启tomcat
systemctl restart tomcat.service
#停止tomcat
systemctl stop tomcat.service
#取消tomcat开机自启动
systemctl disable tomcat.service
二.源码包安装Tomcat
http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.32/src/apache-tomcat-8.5.32-src.tar.gz
Tomcat8下载地址:
参考资料:
https://www.jianshu.com/p/29ecd624046f
http://www.zhengdazhi.com/archives/1382
https://blog.csdn.net/lee4755026/article/details/50146287
https://blog.csdn.net/tiantang_1986/article/details/53704966
http://commons.apache.org/proper/commons-daemon/jsvc.html
CentOS7安装Tomcat的更多相关文章
- 解决CentOS7安装Tomcat不能被外部访问的问题
在CentOS7安装了Tomcat,在服务器内部使用火狐浏览器通过localhost:8080是可以访问的,但是不能被外部访问,主要原因是因为防火墙的存在,导致端口不能被访问.CentOS是使用fir ...
- 简单步骤Centos7安装Tomcat 8 (yum安装)(ZT)
原文:https://blog.51cto.com/bestlope/1978114?source=drt 说明: 操作系统:Centos7 系统环境:未安装其他服务 Step 1:更新系统 sudo ...
- Linux(CentOS7)安装Tomcat (Tomcat+JDK)
安装Tomcat首先要安装jdk,jdk和tomcat安装可以使用的方法:将jdk.tomcat上传到Linux,然后解压后使用,另一种方法是直接使用在线安装:yum 第一步:安装jdk,在Linux ...
- CentOS7 安装 Tomcat
安装 JDK Tomcat 的安装依赖 JDK,在安装 Tomcat 之前需要先安装 Java JDK.输入命令 java -version,如果显示 JDK 版本,证明已经安装了 JDK java ...
- Linux(CentOS7)安装Tomcat
概述 Tomcat是运行Jsp文件的容器服务,能够处理URL请求,类似于IIS.相对于IIS,Tomcat可以部署到Linux.Windows.IOS等操作系统.这里主要整理将Tomcat部署到Lin ...
- [CentOS7]安装tomcat并开启自启动
安装jdk 1.CentOS 6.X 和 7.X 自带有OpenJDK runtime environment (openjdk).它是一个在linux上实现开源的Java 平台. yum searc ...
- Centos7 安装Tomcat并运行程序
运行环境:Centos7 jdk:1.8.0_171 Tocmcat:8.5.31 下载地址 :https://tomcat.apache.org/download-80.cgi#8.5.31 Ap ...
- Centos7安装Tomcat并部署DubboAdmin的War包并配置自动启动
一.安装过程 1.打开官网,在左侧选择要下载的版本,比如下下载Tomcat8:https://tomcat.apache.org/download-80.cgi 2.找到tar.gz的下载地址:htt ...
- CentOS7 安装tomcat为系统服务器 Systemctl管理Tomcat,并设置开机启动
本文转载:http://blog.chinaunix.net/uid-24648266-id-5729891.html CentOS7开始,从/etc/init.d脚本改为了systemctl管理服务 ...
随机推荐
- 牛客网-《剑指offer》-变态跳台阶
C++ class Solution { public: int jumpFloorII(int n) { <<--n; } }; 推导: 关于本题,前提是n个台阶会有一次n阶的跳法.分析 ...
- Go语言类型转换库【github.com/demdxx/gocast】的用法
一.导入库: go get github.com/demdxx/gocast 二.测试代码: // main.go package main import ( "fmt" &quo ...
- ES6学习笔记五:Promise异步任务
一:Promise对象 Promise对象代表一个异步操作,有三种状态:Pending(进行中).Resolved(已完成,又称 Fulfilled)和Rejected(已失败). 二:创建与使用 v ...
- vs2017莫名自动退出调试状态可以尝试一下如下的方法
- 常见pip方法
pip search 包名 查询 pip install 包名 安装包 pip show--files 包名 pip list --outdated 检查哪些包需要更新 pip insta ...
- urlretrieve关于循环下载的一个案例
# -*- coding: cp936 -*- #python 27 #xiaodeng #urlretrieve关于循环下载的一个案例 import urllib def down_list(sto ...
- __set() __get() _isset() __unset() 在__unset() 在类中没有事先声明和已经声明过的属性调用unset的区别
<?php //echo strtr("I Love Mysql, Love PHP", "Mysql","MYSQL"); //$a ...
- Win10激活KMS2.0
目前,发现的唯一能激活Window10的纯净版. 下载地址: http://pan.baidu.com/s/1bpvMRBx 好孩子看不见: http://pan.baidu.com/s/1bo8xP ...
- Zookeeper的Watcher机制
ZooKeeper 提供了分布式数据的发布/订阅功能, 在 ZooKeeper 中引入了 Watcher 机制来实现这种分布式的通知功能. ZooKeeper 允许客户端向服务端注册一个 Watche ...
- VS2017写的exe调用Delphi 7写的DLL
公司有个很古老的系统,代码量很大,并且稳定线上运行10几年,这系统是公司的核心,公司收入基本靠它,系统几乎都是Delphi 7写的,要重写是不可能的.因为Delphi 7编译出来的DLL默认的导出符号 ...