在centos7用tomcat部署項(xiàng)目

文章講述在centos7上用tomcat部署springboot項(xiàng)目,并且按日志按每天輸出。


先打開(kāi)springboot項(xiàng)目的pom.Xml,

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

添加一個(gè)依賴:

<!--聲明spring boot內(nèi)嵌tomcat的作用范圍在運(yùn)行時(shí)不起作用-->

????????<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機(jī)器上新建一個(gè)文件夾,把tomcat壓縮包和testProject.war放進(jìn)去(比如我tomcat放在/www/testWork/ ,testProject.war放在/www/testWork/testProject)

解壓:

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


在tomcat的bin下修改startup.sh,在后面添加自己的環(huán)境:

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>

運(yùn)行tomcat的bin目錄下的startup.sh文件啟動(dòng)tomcat,tail -f logs/catalina.out 查看日志,啟動(dòng)成功就訪問(wèn)(wget http://localhost:8080),這個(gè)頁(yè)面就可以下載下來(lái),查看沒(méi)有錯(cuò),就用另外機(jī)器訪問(wèn),如果訪問(wèn)失敗,那就是防火墻問(wèn)題,

防火墻開(kāi)放8080端口

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

防火墻重新啟動(dòng)

firewall-cmd --reload

這樣項(xiàng)目就部署成功。


項(xiàng)目上的Tomcat服務(wù)器logs目錄下面的catalina.out日志運(yùn)行一段時(shí)間之后,變的越來(lái)越大,而這樣如果需要查找某一天內(nèi)特定的日志內(nèi)容時(shí)就會(huì)變得很不方便,所以需要對(duì)這個(gè)日志進(jìn)行按日期分割生成,方便查找日志。

這個(gè)過(guò)程總共分為兩步:

1.在服務(wù)器上安裝cronolog(如果已經(jīng)安裝,跳過(guò)此步)

在服務(wù)器執(zhí)行which cronolog命令,如果輸出一個(gè)具體的路徑,說(shuō)明你的服務(wù)器已經(jīng)安裝好cronolog,不需要再安裝,可以跳過(guò)第一步。

如果不是,則需要給你的服務(wù)器安裝cronolog,

下載cronolog:

鏈接: https://pan.baidu.com/s/1cdRvO-ROfqbm6tAT9aICuA 密碼: ica7

下載完成之后,上傳到你的服務(wù)器,進(jìn)入你上傳的目錄解壓:tar zxvf cronolog-1.6.2.tar.gz

進(jìn)入到解壓縮后的目錄執(zhí)行:

./configure

注:執(zhí)行./configure時(shí)報(bào)錯(cuò),error: no acceptable cc found in $PATH

原因是沒(méi)有安裝gcc的編輯器。因此安裝

yum install gcc gcc-c++ gcc-g77

然后執(zhí)行:

make

make install

執(zhí)行完之后,如果一切正常,則代表安裝成功,驗(yàn)證安裝是否成功,執(zhí)行:

which cronolog

輸出路勁/usr/local/sbin/cronolog表示安裝成功。


2.配置Tomcat配置文件

打開(kāi)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,你會(huì)發(fā)現(xiàn)logs目錄下面多出一個(gè)按照當(dāng)天日期生成的一個(gè)catalina.xxxx-xx-xx.out文件


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容