详解CentOS 7下安装Tomcat到服务

 更新时间:2017年06月06日 16:07:15   作者:Hegel_Gu  
本篇文章主要介绍了CentOS 7下安装Tomcat到服务,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

环境:

  1. CentOS Linux release 7.3.1611 (Core)
  2. 3.10.0-514.16.1.el7.x86_64

1.安装Java环境

Jre有ServerJre和Jre的区别。两者具体的区别就是ServerJre启动时默认Jvm是Server模式,且包含了一些监控工具,具体的区别见Oracle的站点。现在普遍存在的一个问题就是大部分JAVA程序是基于JAVA7开发的,但是Oracle早就更新到了Java8,且网站上默认提供的是Jre8的下载。不过,无论你要下载哪个版本的JRE,都可以在这里找到。下载ServerJre之前需要单选 Accept License Agreement 来激活下载链接。这里选择的是server-jre-7u80-linux-x64.tar.gz 。下载完毕,解压到 /usr/local/, 这里需要注意的是,解压后的server-jre-7u80-linux-x64.tar.gz 名字是jdk1.7.0_79,但是我测试过,这个跟真正的JDK文件是有所不同的。解压完毕后,编辑 /etc/profile设置环境变量并验证:

cat >>/etc/profile << "EOF"
#set java env
JAVA_HOME=/usr/local/jdk1.7.0_80
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
EOF

source /etc/profile

java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

至此,java环境安装完毕。

2.安装tomcat

直接下载apache-tomcat-7.0.72.tar.gz并解压,将解压后的目录重命名为tomcat7,并移至 /opt 下,然后创建运行环境文件:

vim /opt/tomcat7/bin/setenv.sh

内容与/etc/profile尾部保持一致:

JAVA_HOME=/usr/local/jdk1.7.0_80
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH

至此tomcat安装和设置完成。

3.创建tomcat运行用户并赋权到对应文件。

groupadd tomcat
useradd -M -s /bin/nologin -g tomcat -d /opt/tomcat tomcat #此处假设为tomcat,如果是生产服务器,建议使用环境部署账号来运行tomcat.
cd /opt/tomcat7
chgrp -R tomcat /opt/tomcat
chmod -R g+r conf
chmod g+x conf
chown -R tomcat webapps/ work/ temp/ logs/

至此,相关赋权完成。

4.编辑服务文件

vim /etc/systemd/system/tomcat.service

设置如下,但是你可能需要根据你的内存容量自行调整 CATALINA_OPTS的值,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值,建议堆的最大值设置为可用内存的最大值的80%:

# Systemd unit file for tomcat
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target

[Service]
Type=forking


Environment=CATALINA_PID=/opt/tomcat7/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat7
Environment=CATALINA_BASE=/opt/tomcat7
Environment='CATALINA_OPTS=-Xms128M -Xmx512M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

ExecStart=/opt/tomcat7/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

然后重载一下服务单元:

systemctl daemon-reload

至此全部设置完成。

5.测试

systemctl start tomcat

[root@localhost ~]# curl -I 127.0.0.1:8080
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: text/html;charset=ISO-8859-1
Transfer-Encoding: chunked
Date: Tue, 06 Jun 2017 02:27:16 GMT
systemctl stop tomcat
curl -I 127.0.0.1:8080
curl: (7) Failed connect to 127.0.0.1:8080; Connection refused

完成。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Linux修改主机名命令详解

    Linux修改主机名命令详解

    在本篇文章里小编给大家整理的关于Linux修改主机名命令的知识点详解,有兴趣的朋友可以参考学习下。
    2020-02-02
  • 开启Selinux遇到的坑及解决

    开启Selinux遇到的坑及解决

    这篇文章主要介绍了开启Selinux遇到的坑及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • linux连接不上服务器却能ping通的解决

    linux连接不上服务器却能ping通的解决

    这篇文章主要介绍了linux连接不上服务器却能ping通的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • linux下终端分屏使用的两种方法(screen和tmux)

    linux下终端分屏使用的两种方法(screen和tmux)

    这篇文章主要给大家介绍了关于在linux下终端分屏使用的两种方法,分别是利用screen和tmux,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • Linux(CentOS7)使用 RPM 安装 mysql 8.0.11的教程

    Linux(CentOS7)使用 RPM 安装 mysql 8.0.11的教程

    这篇文章主要介绍了Linux(CentOS7)使用 RPM 安装 mysql 8.0.11的教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • linux操作系统利用python实现任务管理器可视化功能

    linux操作系统利用python实现任务管理器可视化功能

    这篇文章主要介绍了linux操作系统下利用python实现任务管理器可视化功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • Linux上查找最大文件的3种方法

    Linux上查找最大文件的3种方法

    在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件夹的方法,需要的朋友可以参考下
    2025-03-03
  • Linux查看命令之od命令详解

    Linux查看命令之od命令详解

    Linux查看命令之od命令的作用主要是以指定格式查看文件内容。下面的本文先给大家简单介绍了od命令的参数,然后通过示例详细给加演示了od命令的使用,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-12-12
  • linux操作之清空文件方式

    linux操作之清空文件方式

    这篇文章主要介绍了linux操作之清空文件方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • Linux使用dd命令来复制和转换数据的操作方法

    Linux使用dd命令来复制和转换数据的操作方法

    Linux 中的 dd 命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的 USB 驱动器、克隆磁盘和生成随机数据等任务,本文给大家介绍了Linux 如何使用dd命令来复制和转换数据,需要的朋友可以参考下
    2025-01-01

最新评论