常见部署方式:静态部署和容器化部署

一、下载tomcat安装包

下载地址:https://tomcat.apache.org/download-90.cgi

图上是显示最新版本,而我下载的是9.0.8版本。。。

得到 apache-tomcat-9.0.8.tar.gz,并将其传输到服务器的指定路径

二、部署操作

1、解压安装包

tar -xzvf apache-tomcat-9.0.8.tar.gz

2、配置环境变量

编辑配置文件

vim /etc/profile

在# Path manipulation 的上面添加如下内容:

export CATALINA_HOME=/root/soft/docker/north/apache-tomcat-9.0.8  # tomcat解压后的路径
export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
export PATH=$PATH:$CATALINA_HOME/bin

如图

生效修改的环境变量

. /etc/profile  或者source /etc/profile

3、启动tomcat

(1)编辑 /root/soft/docker/north/apache-tomcat-9.0.8/conf/server.xml

如上图,我将端口修改成8082,这里要注意一下tomcat 的默认端口为8080。。。

(2)在apache-tomcat-9.0.8目录下执行命令

./bin/startup.sh

4、浏览器访问

(1)在阿里云ECS控制台添加安全组规则、开放8082端口

(2)此时使用 IP:PORT 访问即可

5、部署方式

(1)Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将JSP程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。

(2)webapps这个默认的应用目录也是可以改变。

  打开Tomcat的conf目录下的server.xml文件,找到下面内容:

<Host name="localhost"  appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>

将appBase修改即可。

(3)在server.xml中指定

在Tomcat的配置文件中,一个Web应用就是一个特定的Context,可以通过在server.xml中新建Context里部署一个JSP应用程序。打开server.xml文件,在Host标签内建一个Context,内容如下:

在tomcat中的conf目录中,在server.xml中的,<host>属性中添加:

<Context path="/demo" docBase="D:\ workspace\hello\WebRoot" debug="" privileged="true">
</Context>
或者
<Context path="/myapp" reloadable="true" docBase="D:\myapp" workDir="D:\myapp\work"/>
或者
<Context path="/sms4" docBase="D:\workspace\sms4\WebRoot"/> 说明:
path是虚拟路径;
docBase 是web项目的WebRoot所在的路径,注意是WebRoot的路径,不是项目的路径。其实也就是编译后的项目
workDir 是这个应用的工作目录,存放运行时生成的与这个应用相关的文件; debug 则是设定debug level, 0表示提供最少的信息,9表示提供最多的信息
privileged设置为true的时候,才允许Tomcat的Web应用使用容器内的Servlet
reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署
antiResourceLocking 和antiJARLocking 热部署是需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。

(4)在conf\Catalina\localhost 目录下添加xml配置文件

在conf目录中,新建 Catalina\localhost目录,在该目录中新建一个xml文件,名为demo.xml,要和path后的那个名字一致,按照下边这个path的配置,xml的名字应该就应该是demo(demo.xml),该xml文件的内容为:

<Context path="/demo" docBase="/root/demo/WebRoot" debug="" privileged="true"></Context>

tomcat自带例子如下:

<Context docBase="${catalina.home}/server/webapps/host-manager"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>

这个例子是tomcat自带的,编辑的内容实际上和第二种方式是一样的,其中这xml文件名字就是访问路径,这样可以隐藏应用的真实名字。

(5)注意

删除一个Web应用同时也要删除webapps下相应的文件夹和server.xml中相应的Context,还要将Tomcat的conf\catalina\localhost目录下相应的xml文件删除,否则Tomcat仍会去配置并加载。。。
二 动态部署
     登陆tomcat管理控制台:http://localhost:8080/ ,输入用户名和密码后便可管理应用并动态发布。
     在Context Path(option):中输入/yourwebname ,这代表你的应用的访问地址。
     XML Configration file URL中要指定一个xml文件,比如我们在F:\下建立一个hmcx.xml文件,内容如下:

<Context reloadable="false" />

其中docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填,在WAR or Directory URL:中键入F:\hmcx即可,然后点击Deploy按钮,上面就可以看到了web应用程序,名字就Context Path(option):中的名字。

静态部署TOMCAT的更多相关文章

  1. eclipse静态部署tomcat

  2. springboot 学习之路 5(打成war包部署tomcat)

    目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...

  3. IDEA 部署Tomcat教程(透彻理解操作)

    目录 首先我们看一下 IDEA 里的当前项目结构配置 设置 Web 资源目录和 Tomcat读取的 web.xml 配置文件 Tomcat 的 Run/Debug 配置 处理常见问题 Web资源找不到 ...

  4. 3-linux下部署tomcat应用

    linux下部署tomcat应用 相关软件下载 jdk      http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downlo ...

  5. 关于前期在云服务器上部署TOMCAT服务器的问题

    如果你要将你的项目放在服务器上(针对云服务器),首先你必须要学会前期部署Tomcat的准备, 第一步:安装jdk,配置环境变量 这个比较简单,配置java环境变量最为简单的方法是将java的 (../ ...

  6. Jenkins自动部署Tomcat项目

    Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:

  7. linux环境下部署tomcat

    服务器环境:Red Hat Enterprise Linux Server release 6.5 安装部署包:apache-tomcat-8.0.30.tar.gz.jdk-8u66-linux-x ...

  8. 使用Maven自动部署Tomcat 6和Tomcat 7下Web应用

    使用Maven自动部署Tomcat 6和Tomcat 7下Web应用 开启Tomcat远程管理权限 在tomcat的config目录下的tomcat-users.xml文件, <role rol ...

  9. maven部署tomcat项目,403错误解决

    maven部署tomcat项目时403错误的解决方法 web模块的pom文件 pom.xml <plugin> <groupId>org.apache.tomcat.maven ...

随机推荐

  1. BZOJ1899 [Zjoi2004]Lunch 午餐 贪心+DP

    题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=1899 题解 如果只有一个窗口,那么可以这样考虑:因为最后一个人打完饭的时间是固定的,那么不如就 ...

  2. 【JVM】JVM参数

    JVM参数的含义  参数名称 含义 默认值   -Xms 初始堆大小 物理内存的1/64(<1GB) 默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆 ...

  3. 误删SQL Server日志文件后怎样附加数据库

    SQL Server日志文件因为误操作被删除,当附加数据库的时候提示:附加数据库失败. 解决办法如下: 1.新建一个同名数据库. 2.停止数据库服务,覆盖新建的数据库主文件(小技巧:最好放在同一个磁盘 ...

  4. JS中数据结构之二叉查找树

    树是一种非线性的数据结构,以分层的方式存储数据.在二叉树上进行查找非常快,为二叉树添加或删除元素也非常快. 一棵树最上面的节点称为根节点,如果一个节点下面连接多个节点,那么该节点称为父节点,它下面的节 ...

  5. kafka-producer.properties

    # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreement ...

  6. FPGA学习的一些误区

    转载自网络,作者不详. 我常年担任多个有关FPGA学习研讨的QQ群管理员,长期以来很多新入群的菜鸟们总是在重复的问一些非常简单但是又让新手困惑不解的问题.作为管理员经常要给这些菜鸟们普及基础知识,但是 ...

  7. PHPSTORM破解版激活方式方法

    方法一. 通过Licence Server 激活PHPStorm(快速) 方法原理是通过搭建服务器激活,不过网上有许多搭建好的. http://idea.goxz.gq http://v2mc.net ...

  8. 【BZOJ3522&BZOJ4543】Hotel加强版(长链剖分,树形DP)

    题意:求一颗树上三点距离两两相等的三元组对数 n<=1e5 思路:From https://blog.bill.moe/bzoj4543-hotel/ f[i][j]表示以i为根的子树中距离i为 ...

  9. excle里边的数据怎么导入oracle数据库

    方式一:(不正式) select出的列数与已经准备好的excle中的列数相同.select  xh,name from 表名 where xh = 'ghf' for update;  (查不到任何结 ...

  10. GIT安装包备用地址

    如果官网下载被禁止,可在下面这个地址下载,速度飞快 http://www.wmzhe.com/soft-38801.html#download