美文网首页
在centos7用tomcat部署项目

在centos7用tomcat部署项目

作者: 傻明蚕豆 | 来源:发表于2019-09-26 23:59 被阅读0次

文章讲述在centos7上用tomcat部署springboot项目,并且按日志按每天输出。


先打开springboot项目的pom.Xml,

要打包成war,添加:<packaging>war</packaging>

添加一个依赖:

<!--声明spring boot内嵌tomcat的作用范围在运行时不起作用-->

        <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-tomcat</artifactId>

            <scope>provided</scope>

        </dependency>

再添加插件:

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

<plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-compiler-plugin</artifactId>

    <version>3.6.0</version>

    <configuration>

        <source>1.8</source>

        <target>1.8</target>

    </configuration>

</plugin>

</plugins>

<!-- 打包后的名称 -->

<finalName>testProject</finalName>

</build>

我这里使用eclipse,然后run as -》 maven bulid -》 clean install 就打包成testProject.war,


在centos机器上新建一个文件夹,把tomcat压缩包和testProject.war放进去(比如我tomcat放在/www/testWork/ ,testProject.war放在/www/testWork/testProject)

解压:

jar -xvf testProject.war tar -xzvf tomcat.tar.gz 

在tomcat的bin下修改startup.sh,在后面添加自己的环境:

export JAVA_HOME=/usr/local/java/jdk1.8.0_201

export CATALINA_HOME=/www/testWork/apache-tomcat-8.5.40

export TOMCAT_HOME=/www/testWork/apache-tomcat-8.5.40

export JAVA_OPTS="-Xms512m -Xmx512m"

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib/servlet-api.jar

export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$TOMCAT_HOME/bin

修改tomcat的conf/server.xml

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

<Context path="/" docBase="/www/testWork/testProject" debug="0"/>

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

               prefix="localhost_access_log" suffix=".txt"

               pattern="%h %l %u %t "%r" %s %b" />

</Host>

运行tomcat的bin目录下的startup.sh文件启动tomcat,tail -f logs/catalina.out 查看日志,启动成功就访问(wget http://localhost:8080),这个页面就可以下载下来,查看没有错,就用另外机器访问,如果访问失败,那就是防火墙问题,

防火墙开放8080端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent

防火墙重新启动

firewall-cmd --reload

这样项目就部署成功。


项目上的Tomcat服务器logs目录下面的catalina.out日志运行一段时间之后,变的越来越大,而这样如果需要查找某一天内特定的日志内容时就会变得很不方便,所以需要对这个日志进行按日期分割生成,方便查找日志。

这个过程总共分为两步:

1.在服务器上安装cronolog(如果已经安装,跳过此步)

在服务器执行which cronolog命令,如果输出一个具体的路径,说明你的服务器已经安装好cronolog,不需要再安装,可以跳过第一步。

如果不是,则需要给你的服务器安装cronolog,

下载cronolog:

链接: https://pan.baidu.com/s/1cdRvO-ROfqbm6tAT9aICuA 密码: ica7

下载完成之后,上传到你的服务器,进入你上传的目录解压:tar zxvf cronolog-1.6.2.tar.gz

进入到解压缩后的目录执行:

./configure

注:执行./configure时报错,error: no acceptable cc found in $PATH

原因是没有安装gcc的编辑器。因此安装

yum install gcc gcc-c++ gcc-g77

然后执行:

make

make install

执行完之后,如果一切正常,则代表安装成功,验证安装是否成功,执行:

which cronolog

输出路劲/usr/local/sbin/cronolog表示安装成功。


2.配置Tomcat配置文件

打开tomcat目录下bin/catalina.sh文件,

在420行左右 有一行这样的代码

touch "$CATALINA_OUT"

前面加上"#"注释掉 

#touch "$CATALINA_OUT"

在432行左右,有下面类似的代码

org.apache.catalina.startup.Bootstrap “$@” start \

>> “$CATALINA_OUT” 2>&1 “&”

修改为

org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \

|/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null 2>&1 &

(注意如果你的cronolog安装路径不是/usr/local/sbin/cronolog 那么则需要该改为你自己的路径)

在441行左右也有一段同样的代码

org.apache.catalina.startup.Bootstrap “$@” start \

>> “$CATALINA_OUT” 2>&1 “&”

也修改为

org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \

|/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null 2>&1 &

修改完之后重启tomcat,你会发现logs目录下面多出一个按照当天日期生成的一个catalina.xxxx-xx-xx.out文件

相关文章

网友评论

      本文标题:在centos7用tomcat部署项目

      本文链接:https://www.haomeiwen.com/subject/cblkuctx.html