详解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模式,且包含了一些监控工具,具体的区别见。现在普遍存在的一个问题就是大部分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  

完成。

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

参与评论