首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

你知道怎么在生产环境下部署Tomcat吗?

三、部署目录

我们先看一下Tomcat目录结构:

--bin        //存放着tomcat启动和关闭脚本--conf       //存放着tomcat服务器的各种配置文件--lib        //tomcat服务器和所有web应用所属的jar文件--logs       //存放着Tomcat的日志文件--temp       //存放着Tomcat的运行时产生的临时文件--webapps    //把web应用放到此目录即可--work       //Tomcat将jsp生成servlet源文件和字节码文件放到此目录

# cp -r /usr/local/tomcat/conf /usr/local/web-apps/web-a/# cp -r /usr/local/tomcat/conf /usr/local/web-apps/web-b/

再在web-a和web-b目录下,新建webapps和logs目录,webapps存放web应用,logs存放日志文件。

到此目录分离开了,但还缺少一个启动脚本

五、启动脚本

此启动脚本,老顾引用了网上的一个脚本改造了一下,命名为tomcat.sh

脚本比较简单,核心就是启动参数,只要注意CATALINA_BASE="`pwd`"的意思是,执行脚本的路径,也就是代表web应用路径是脚本执行的路径;

再把tomcat.sh设置一些启动权限 # chmod +x tomcat.sh

修改conf下的server.xml

修改了红色字体部分,host中的appBase是相对CATALINA_BASE的路径,就是web应用的路径,context中的path是请求url,docBase也是相对路径,相对于appBase的,当然也可以设置绝对路径。在web-a下创建index.html文件

到现在为止的web-a的目录下

启动tomcat.sh

需要说明的是,在web-a执行tomcat.sh,里面的启动参数CATALINA_BASE是web应用路径,那tomcat.sh脚本中的$CATALINA_HOME/bin/catalina.sh 这个脚本执行所采用的conf配置文件是web-a目录下的,跟tomcat程序的conf没有任务关系,也跟web-b目录下的conf也没有任何关系,这样就达到了应用之间的配置分离

补充一下,在配置context和host时,很多公司不会在server.xml配置,而是通过conf/Catalina目录下,新建host和context,这个知识点,网上很多,小伙伴们可自行查看,因为我们已经单应用分离出来了,那样的配置好处不大。

六、总结

上面老顾介绍了tomcat在生产环境的部署要点,其实还缺少一个环节,就是我们war包或jar包是按照什么流程以及方式上传到生产环境的?这个留个悬念,下次老顾会介绍。

我们一般在学习中,一些介绍的资料都是浅层次的,虽然能够运行起来,但在真实使用过程中需要考虑别的因素(维护的方便性,隔离性等),所以在我们学习到的基础上面会有很大的不一样。希望小伙伴通过自己学习的,一定要结合公司或者前辈们分享的生产实战经验,去理解真正的使用。谢谢大家!!!

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OJFnRFqJqFJS6FU7Aww1_biA0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券