JDK + Tomcat 安装 + 制作自定义镜像【第 2 篇 Tomcat】
【第 1 篇 JDK】:https://www.cnblogs.com/del88/p/11842387.html
【第 2 篇 Tomcat】:https://www.cnblogs.com/del88/p/11843240.html
【第 3 篇 系统镜像】:https://www.cnblogs.com/del88/p/11850496.html
===========================================================
0.参考:
https://www.cnblogs.com/lei01/p/9911156.html
这篇是真不错:https://blog.csdn.net/qq_32596527/article/details/82779546
1.下载tomcat

2.再/usr/local 目录下建立,tomcat 目录,然后用xftp把下载的包上传到这个目录:

3.进入目录解压:tar -zxvf apache-tomcat-9.0.27.tar.gz


4.修改server.xml里的端口为80,因为聚石塔不开放8080端口,另外web也一般直接默认80端口,为了避免以后遇到麻烦奇怪的问题(如阿里云的网络入口规则屏蔽8080,测试的时候比较麻烦,而80一般是绝对准入的),所以还是修改为80吧,当然若你觉得没必要,这步也可以跳过,根据自身的情况来。然后上传服务器

5.设置开机自动启动,Tomcat;

为了以后方便,省得tomcat 版本升级到10了,复制命令的时候不方便,所以文件名修改为:tomcat.service吧
保存后,上传上去。
[Unit]
Description=Liyuxin Tomcat Auto Runing
After=syslog.target network.target remote-fs.target nss-lookup.target [Service]
Type=forking
ExecStart=/usr/local/tomcat/apache-tomcat-9.0.31/bin/startup.sh
ExecStop=/usr/local/tomcat/apache-tomcat-9.0.31/bin/shutdown.sh
ExecReload=/bin/kill -s HUP $MAINPID
RemainAfterExit=yes
Environment="JAVA_HOME=/usr/local/java/jdk1.8.0_241" [Install]
WantedBy=multi-user.target

开启Tomcat的开机自动启动(开启后不要忘记reboot重启):systemctl enable tomcat.service 查看Tomcat 是否开启自动启动了:systemctl list-unit-files |grep tomcat 关闭Tomcat的开机自动启动:systemctl disable tomcat.service ======================================================= 通过这种启动服务的方式间接启动:systemctl start tomcat.service 通过这种关闭服务的方式间接关闭:systemctl stop tomcat.service 间接重启:systemctl restart tomcat.service 查看当前tomcat服务的启动状态:systemctl status tomcat.service ======================================================= 当然你也可以进入tomcat的bin目录下执行:./startup.sh 和 ./shutdown.sh 来启动和关闭 带启动日志的方式来启动tomcat(可以通过xshell和输出的文件来查看启动日志):./startup.sh && tail -f ../logs/catalina.out
1.开启tomcat的开机自动启动服务:

2.查看开启状态:

3.此时可以重启下了(reboot),因为不需要再关闭tomcat的开机自动启动功能,此时重启下,看看tomcat会不会自动启动。重启后连接上xshell;
systemctl status tomcat.service

至此就完全搞定。
6.测试tomcat;【阿里云原版、京东的云主机centos都有这个问题】发现用centos的原版,各种问题,难以启动tomcat 搞了一个下午,浪费了一个下午,用了阿里云自己的linux版本,速度大提升,且不会出现各种问题。这个世界上搞技术的都是穷光蛋,切记利益关系,不要沉浸在技术的世界里,技术本身就是个屁,解决问题的思想才是最重要的 。草 centos浪费老子一个下午的时间。难以启动tomcat的原因是8005端口启动超级慢,网上一搜一大推,说什么是随机数熵值不够,可以看图如下,解决方法就是安装一个扩大熵值的工具。若使用的是AliyunLinux的话,不存在这个问题,可以直接测试成功。


原版centos7下,执行完这两句,重启reboot,然后再启动tomcat 就不会存在卡在8005端口上,tomcat启动超级慢10分钟才能启动起来的问题了。正常tomcat启动的时间为1-3秒钟。
yum install jsvc rng-tools -y
systemctl enable rngd
阿里云自己的linux上不需要安装那个扩大滴值的工具,没有任何问题。

7.最后删除webapps文件夹下默认的内容:
rm -rf /usr/local/tomcat/apache-tomcat-9.0.27/webapps/*

JDK + Tomcat 安装 + 制作自定义镜像【第 2 篇 Tomcat】的更多相关文章
- JDK + Tomcat 安装 + 制作自定义镜像【第 1 篇 JDK】
[第 1 篇 JDK]:https://www.cnblogs.com/del88/p/11842387.html[第 2 篇 Tomcat]:https://www.cnblogs.com/del8 ...
- JDK + Tomcat 安装 + 制作自定义镜像【第 3 篇 系统镜像】
[第 1 篇 JDK]:https://www.cnblogs.com/del88/p/11842387.html[第 2 篇 Tomcat]:https://www.cnblogs.com/del8 ...
- 7.3 自定义镜像-运行nginx与tomcat并结合PV/PVC/NFS以实现动静分离示例
1.在NFS SERVER上为tomcat.nginx创建相关目录 NFS SERVER的部署配置参考:https://www.cnblogs.com/yanql/p/15410308.html 1. ...
- Dockerfile制作自定义镜像
本文介绍最精简的Dockerfile文件构建镜像,Docker启动的时候可以启动一个shell脚本 1.首先编写Dockerfile文件 说明 1.启动的这个shell脚本一定是不退出的,比如服务器的 ...
- Linux的软件安装(JDK安装,Mysql安装,Tomcat安装)
1.JDK安装 注意:rpm与软件相关命令 相当于window下的软件助手 管理软件 步骤: 1)查看当前Linux系统是否已经安装java 输入 rpm -qa | grep java ps:博主这 ...
- Tomcat安装部署和安全加固优化以及反向代理应用
1.Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同 ...
- Tomcat安装及配置详解
Tomcat安装及配置详解 一,Tomcat简介 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Found ...
- 五十四.自定义镜像及仓库、持久化存储 、 Docker网络架构
1. 制作自定义镜像(base基础镜像,搭建共性环境) 基于centos镜像使用commit创建新的镜像文件 基于centos镜像使用Dockerfile文件创建一个新的镜像文件 1.1 使用镜像 ...
- CentOS学习笔记--Tomcat安装
Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...
随机推荐
- Linux下R环境安装
R环境的两种安装方式,源码编译安装和yum在线安装 第一种:源码编译安装 1.首先,从官网上下载3.5.0版本 2.下载完后记得解压,我的习惯是解压在/usr/local下面 tar -zxvf R- ...
- Vue插件编写、用法详解(附demo)
Vue插件编写.用法详解(附demo) 1.概述 简单来说,插件就是指对Vue的功能的增强或补充. 比如说,让你在每个单页面的组件里,都可以调用某个方法,或者共享使用某个变量,或者在某个方法之前执行一 ...
- python3 枚举enum定义和使用
两种方式定义枚举类: 1.直接使用Enum列出多个枚举值来创建枚举类. 2.通过集成Enum基类派生枚举类. 程序示范: 1.直接使用Enum列出多个枚举值来创建枚举类. from enum impo ...
- Flutter 获取网络数据及渲染列表
还是通过Dio包调用远程接口获取数据,这里返回值为一个Future,这个对象支持一个等待回掉方法then. 示例代码如下: import 'package:flutter/material.dart' ...
- ORA-00054:Orcacle表锁定
查询被锁的session_id select session_id from v$locked_object; 查询结果----------------------SESSION_ID8 查询被锁se ...
- Bootstrap, 模态框实现值传递,自动勾选
目录 Bootstrap,模态框自动勾选,值传递 1.父页面 2. 子页面(modal) 模态框 Bootstrap,模态框自动勾选,值传递 场景: 有一个这样的需求, 在父页面有一个table, ...
- Java工程师学习指南第8部分:分布式系统理论与实践
本文整理了微信公众号[Java技术江湖]发表和转载过的分布式相关优质文章,想看到更多Java技术文章,就赶紧关注本公众号吧. 细聊分布式ID生成方法 近期面试Java后端的一些感悟 本专栏介绍分布式的 ...
- 单例Bean注册表接口SingletonBeanRegistry
Github: SingletonBeanRegistry.java SingletonBeanRegistry package org.springframework.beans.factory.c ...
- jqGrid清空表格
$("#jqGrid").jqGrid("setGridParam",{ datatype:'local', data : [], page:1 }).trig ...
- Mybatis之自动生成
使用Mybatis来自动生成我们的dao接口,mapper文件和实体类. 1.pom.xml依赖: <dependencies> <dependency> <groupI ...