详解CentOS 7下安装Tomcat到服务
环境:
- centos linux release 7.3.1611 (core)
- 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
完成。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读