Tomcat站点部署

Posted 运维猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat站点部署相关的知识,希望对你有一定的参考价值。

1、简介

以部署jspxcms为例,在上面已部署的环境下继续操作。

2、安装mysql及创建库

 [root@ansible ~]# yum -y install mariadb mariadb-server
 [root@ansible ~]# systemctl enable mariadb
 [root@ansible ~]# systemctl start mariadb

3、创建数据库并授权

 ##创建数据库密码,我这里先设置为123456
 [root@ansible ~]# mysql_secure_installation
 ##创建数据库并授权
 [root@ansible ~]# mysql -uroot -p123456
 Welcome to the MariaDB monitor. Commands end with ; or g.
 Your MariaDB connection id is 25
 Server version: 5.5.64-MariaDB MariaDB Server
 Copyright (c) 20002018, Oracle, MariaDB Corporation Ab and others.
 Type 'help;'or 'h'forhelp. Type 'c'to clearthe current input statement.
 MariaDB [(none)]> create database jspxcms_test character setutf8;
 MariaDB [(none)]> grant all on jspxcms_test.* to 'jspxcmsuser'@'localhost'identified by '123';
 MariaDB [(none)]> flush privileges;

4、tomcat默认的网站目录

 [root@ansible webapps]# ls /usr/local/tomcat/webapps/
 docs examples host-manager manager ROOT
 [root@ansible webapps]# ls /usr/local/tomcat/webapps/ROOT/

5、部署jspxcms

1.jspxcms下载地址http://www.jspxcms.com,上传jspxcms安装包并解压

 [root@ansible ~]# mkdir tools
 [root@ansible tools]# ls
 jspxcms-9-2.zip
 [root@ansible tools]# unzip jspxcms-9-2.zip
 [root@ansible tools]# ls
 CHANGELOG.txt jspxcms-9-2.zip               __MACOSX
 database       Jspxcms安装手册.pdf           tomcat
 jspxcms-9-2   Jspxcms安装说明_tomcat版.txt 用户许可协议.txt
 [root@ansible tools]# rm -rf /usr/local/tomcat/webapps/*
 [root@ansible webapps]# cd /root/tools/tomcat/webapps
 [root@ansible webapps]# cp -a ROOT /usr/local/tomcat/webapps/

2.导入sql文件

 [root@ansible tools]# mysql -D jspxcms_test < database/mysql.sql -p123456

3.编辑配置文件配置数据库连接信息

 [root@ansible tools]# vim /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/application.properties
 ##第5行左右
 spring.datasource.url=jdbc:mysql://{host}:{port}/{name}?characterEncoding=utf8
 改为:
 spring.datasource.url=jdbc:mysql://127.0.0.1:3306/jspxcms_test?characterEncoding=utf8
 ##第7行左右
 spring.datasource.username=root
 改为:
 spring.datasource.username=jspxcmsuser
 ##第10行左右
 spring.datasource.password=password
 改为:
 spring.datasource.password=123

4.重启tomcat

 [root@ansible tools]# /usr/local/tomcat/bin/shutdown.sh
 [root@ansible tools]# /usr/local/tomcat/bin/startup.sh 

6、web页面访问 前台地址:http://172.17.120.10:8080/

Tomcat站点部署

7、后台地址:http://172.17.120.10:8080/cmscp/index.do   默认账号:admin 密码为空

Tomcat站点部署

8、Tomcat多实例站点部署

多实例作用运行不同的应用(类似虚拟主机)多实例运行相同的应用(实现负载均衡,支持高并发处理,session问题)

1.拷贝tomcat目录

 [root@ansible local]# cp -a /usr/local/tomcat/ /usr/local/tomcat9_1
 [root@ansible local]# cp -a /usr/local/tomcat/ /usr/local/tomcat9_2

2.编辑配置文件,修改监听端口和站点家目录

 [root@ansible local]# vim /usr/local/tomcat9_1/conf/server.xml
 ##第22行左右
 <Server port="8091"shutdown="SHUTDOWN">
 ##第69行左右
     <Connector port="8081"protocol="HTTP/1.1"
                connectionTimeout="20000"
                redirectPort="8443"/>
 ##第148行左右
     <Host name="localhost" appBase="/webapps/tomcat9_1"
             unpackWARs="true"autoDeploy="true">
 [root@ansible local]# vim /usr/local/tomcat9_2/conf/server.xml
 ##第22行左右
 <Server port="8092"shutdown="SHUTDOWN">
 ##第69行左右
     <Connector port="8082"protocol="HTTP/1.1"
                connectionTimeout="20000"
                redirectPort="8443"/>
 ##第148行左右
     <Host name="localhost" appBase="/webapps/tomcat9_2"
             unpackWARs="true"autoDeploy="true">

3.创建站点家目录,及测试页面准备

 [root@ansible local]# mkdir -p /webapps/tomcat9_{1,2}
 [root@ansible local]# mkdir /webapps/tomcat9_{1,2}/ROOT
 ##tomcat9_1测试页面准备
 <html>
 <body>
 <center>
 <H1><%=new java.util.Date()%></H1>
 <H2>tomcat9_1</H2>
 </center>
 </body>
 </html>
 ##tomcat9_2测试页面准备
 <html>
 <body>
 <center>
 <H1><%=new java.util.Date()%></H1>
 <H2>tomcat9_2</H2>
 </center>
 </body>
 </html>

4.删除掉之前的站点目录里面的东西,对这里没有用了。可以直接删掉

 [root@ansible local]# rm -rf /usr/local/tomcat9_2/webapps/*
 [root@ansible local]# rm -rf /usr/local/tomcat9_1/webapps/*

5.启动tomcat1和tomcat2

 [root@ansible local]# for i in {1..2};do /usr/local/tomcat9_$i/bin/startup.sh; done

6.端口查看

 [root@ansible local]# ss -tnlp |grep :80
 LISTEN     0     100        *:8009                     *:*                   users:(("java",pid=50354,fd=59))
 LISTEN     0     100        *:8080                     *:*                   users:(("java",pid=50354,fd=54))
 LISTEN     0     100        *:8081                     *:*                   users:(("java",pid=51326,fd=54))
 LISTEN     0     100        *:8082                     *:*                   users:(("java",pid=51340,fd=54))
 LISTEN     0     1     127.0.0.1:8091                     *:*                   users:(("java",pid=51326,fd=67))
 LISTEN     0     1     127.0.0.1:8092                     *:*                   users:(("java",pid=51340,fd=67))
 LISTEN     0     1     127.0.0.1:8005                     *:*                   users:(("java",pid=50354,fd=72))

9、访问测试

Tomcat站点部署

Tomcat站点部署

10、Tomcat多实例启动脚本

 [root@ansible ~]# vim TomcatSys.sh
 #!/bin/bash
 #Desc:用于tomcat多实例部署启动脚本。
 #Date:2019-11-19
 #by:yunweimao
 
 if"$1"=="tomcat1"];then
    exportCATALINA_HOME="/usr/local/tomcat9_1"
 elif"$1"=="tomcat2"];then
    exportCATALINA_HOME="/usr/local/tomcat9_2"
 else
    echo$"Usage: $0{[tomcat1|tomcat2] start|stop|restart}"&& exit
 fi
 
 case "$2"in
 start)
    $CATALINA_HOME/bin/startup.sh
   ;;
 stop)
    $CATALINA_HOME/bin/shutdown.sh
   ;;
 restart)
    $CATALINA_HOME/bin/shutdown.sh
    sleep3
    $CATALINA_HOME/bin/startup.sh
   ;;
   *)
    echo$"Usage: $0{[tomcat1|tomcat2] start|stop|restart}"&& exit
   ;;
 esac
 --------------------------------------------------------------------------
 ##使用说明:
 [root@ansible ~]# ./TomcatSys.sh tomcat1 stop ##停止tomcat1
 [root@ansible ~]# ./TomcatSys.sh tomcat1 start ##启动tomcat1
 [root@ansible ~]# ./TomcatSys.sh tomcat2 restart ##重启tomcat2


扫描二维码

获取更多精彩

Tomcat站点部署

有需要技术交流的小伙伴可以加我微信,期待与大家共同成长,本人微信:

扫描二维码

添加私人微信

运维猫博主

Tomcat站点部署


点击阅读原文  查看更多精彩内容!!!


以上是关于Tomcat站点部署的主要内容,如果未能解决你的问题,请参考以下文章

Tomcat多站点部署方式

tomcat访问控制及站点部署

tomcat+nginx部署站点

Linux下Tomcat多实例部署配置

Docker:Docker实战部署HTTPS的Tomcat站点

第二十期:基于tomcat部署jforum站点,并结合nginx实现动静分离