距离上次折腾已经有很长一段时间了。。。

不说这个,刚好有空闲,把这两天折腾的 Tomcat 8 的服务配置整理出来收录一下。

1、JDK安装

1)检查服务器是否预装了 openJdk,如果有就删除,在这里因为我的系统里没有所以不多赘述。

2)到 oracle 的官网下载 JDK 安装包,这里我使用的是 jdk1.8.0_73,官网下载 jdk-8u73-linux-x64.rpm 并上传到服务器。

3)到安装包目录下执行命令

rpm -ivh jdk-8u73-linux-x64.rpm

4)运行命令查看是否安装成功

java -version

显示 java 版本信息,安装成功

java version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

2、Tomcat8 配置

1)下载 Tomcat 8 并上传到服务器,这里我下载的是 apache-tomcat-8.0.32.tar.gz 版本

2)配置单独用户 tomcat 运行 Tomcat8 服务,这这里配置的 tomcat 是无登录权限的账户

groupadd tomcat
useradd -s /sbin/nologin -g tomcat tomcat
usermod -L tomcat

3)解压 Tomcat 8 并复制到 tomcat 用户目录下

tar -zxv -f apache-tomcat-8.0..tar.gz
rm -rf apache-tomcat-8.0..tar.gz
mv apache-tomcat-8.0. tomcat
mv tomcat/ /home/tomcat/

4)授权目录权限给 tomcat 用户

chown -R tomcat:tomcat /home/tomcat/tomcat

5)在 Tomcat 8 的 bin 目录下添加启动配置 setenv.sh 文件

cd /home/tomcat/tomcat/bin
vi setenv.sh

setenv.sh 文件的相关内容如下

#add tomcat pid
CATALINA_PID="/var/run/tomcat.pid"
#add JAVA_HOME
JAVA_HOME=/usr/java/default
#add JAVA_OPTS
JAVA_OPTS="-server -Xms256M -Xmx512M -XX:MaxNewSize=256m"

6)编译安装 jsvc,jsvc 是 daemon 模式用来启动 Tomcat 8 的程序,通过C语言编译,可以在普通用户下打开 80 端口

cd /home/tomcat/tomcat/bin
tar -zxvf commons-daemon-native.tar.gz
cd commons-daemon-1.0.-native-src/
./configure --with-java=/usr/java/default
make
cp jsvc ../..

7)配置 Tomcat 8 为 systemctl 服务,在 /usr/lib/systemd/system 下创建文件 tomcat.service

cd /usr/lib/systemd/system
vi tomcat.service

tomcat.service 的内容如下

[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target [Service]
Type=forking
PIDFile=/var/run/tomcat.pid
ExecStart=/home/tomcat/tomcat/bin/daemon.sh start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install]
WantedBy=multi-user.target

至此,全部配置基本完成

设置开机启动的命令

systemctl enable tomcat

启动服务

systemctl start tomcat

重启服务

systemctl restart tomcat

停止服务

systemctl stop tomcat

CentOS 7 中配置通过 daemon 模式启动的 Tomcat 8 服务的更多相关文章

  1. RHEL/CentOS 7 中配置 PXE 网络启动服务器

    RHEL/CentOS 7 中配置 PXE 网络启动服务器 作者: Matei Cezar 译者: LCTT joeren | 2015-02-17 14:28   评论: 13 收藏: 8 分享:  ...

  2. CentOs 7.*中配置安装phpMyAdmin的完整步骤记录

    phpMyAdmin是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的资料库管理工具.下面这篇文章主要给大家介绍了关于CentOs 7.*中配置安装phpMyAdmin的相关资 ...

  3. 在 Azure CentOS VM 中配置 SQL Server 2019 AG - (上)

    前文 假定您对Azure和SQL Server HA具有基础知识 假定您对Azure Cli具有基础知识 目标是在Azure Linux VM上创建一个具有三个副本的可用性组,并实现侦听器和Fenci ...

  4. CentOS 7 中配置Firewall规则

    1. 防火墙简介 动态防火墙后台程序 firewalld 提供了一个 动态管理的防火墙,用以支持网络 “zones” ,以分配对一个网络及其相关链接和界面一定程度的信任.它具备对 IPv4和 IPv6 ...

  5. Nginx在Centos 7中配置开机启动

    1.创建脚本 # vi /etc/init.d/nginx #!/bin/bash # nginx Startup script for the Nginx HTTP Server # it is v ...

  6. 阿里云centos系统中配置mysql,并远程连接到本地的navicat

    1.直接使用yum命令下载mysql5.6来进行安装是不能成功的,安装过程会有问题,这里我们需要使用rpm命令来先进下载.下载路径为:http://dev.mysql.com/get/mysql-co ...

  7. 160809、tomcat中配置多个域名及将tomcat配置成系统服务

    本地测试用的(注意红色部分) 第一步.自己的windows电脑,在c盘中有个hosts文件(搜索一下),做以下修改(其中127.0.0.1是本机地址,192.1638.10.139是我虚拟机中linu ...

  8. 在Centos系统中基于PowerDNS实现master和slave的域名解析服务双备份

    在上一篇文章中,阐述了如何在Centos 7系统(其他版本的Centos未尝试)中基于PowerDNS和poweradmin自建域名解析服务器替代DnsPod的过程.但是在一般的DNS服务中,我们需要 ...

  9. centos下安装mysql(安装,启动,停止,服务端口查询,用户密码设定)

    http://www.2cto.com/database/201305/208114.html http://smilemonkey.iteye.com/blog/673848 netstat -na ...

随机推荐

  1. [加强版] Codeforces 835D Palindromic characteristics (回文自动机、DP)

    题目链接: https://codeforces.com/contest/835/problem/D 题意: 一个回文串是\(1\)-回文的,如果一个回文串的左半部分和右半部分一样且都是\(k\)-回 ...

  2. 【codeforces 508B】Anton and currency you all know

    [题目链接]:http://codeforces.com/contest/508/problem/B [题意] 给你一个奇数; 让你交换一次数字; 使得这个数字变成偶数; 要求偶数要最大; [题解] ...

  3. (44). Spring Boot日志记录SLF4J【从零开始学Spring Boot】

    在开发中打印内容,使用 System.out.println() 和 Log4j 应当是人人皆知的方法了. 其实在开发中我们不建议使用 System.out 因为大量的使用 System.out 会增 ...

  4. Python之路【第一篇】:Python基础1

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  5. springCloud学习-服务链路追踪(Spring Cloud Sleuth)

    1.简介 Spring Cloud Sleuth 是 Spring Cloud 的一个组件,它的主要功能是在分布式系统中提供服务链路追踪的解决方案. 常见的链路追踪组件有 Google 的 Dappe ...

  6. MSXML2

    The following C/C++ example creates and appends a new text node to the root document element. #impor ...

  7. Spring MVC REST 风格的 URL

    前言 本文主要内容为 REST 风格的 URL. REST REST(Representational State Transfer).(资源)表现层状态转化.它是一种架构风格,用 url 来访问网络 ...

  8. N天学习一个linux命令之rpm

    用途 RPM是Redhat Package Manager三个单词首字母缩写,是类redhat linux系统的包管理器,用它可以安装包(二进制/源码),升级包,删除包,查询包信息等功能.RPM软件包 ...

  9. wait()方法写在while循环中可以在线程接到通知后再一次判断条件

    wait()方法写在while循环中可以在线程接到通知后再一次判断条件 synchronized public String pop() { String returnValue = "&q ...

  10. [Vue-rx] Access Events from Vue.js Templates as RxJS Streams with domStreams

    The domStreams component property enables you to access Events from your Vue.js templates as Streams ...