使用基於docker的tomcat部署war包的SpringBoot項目

部署springboot項目的方式有多種,可以把項目做成docker的鏡像,也可以打成jar包,使用java -jar命令運行 ,這在之前的博客我都有介紹,還有另外一種方式,使用tomcat部署,本次介紹基於docker的tomcat部署SpringBoot項目

Linux使用的是CentOS7 ,首先在docker 中安裝tocmat

docker pull tomcat

創建tomcat容器並把它掛載到本地/opt/docker/tomcat01/webapps中

docker run -itd --name tomcat01 -p 58080:8080 -v /opt/docker/tomcat01/webapps:/usr/local/tomcat/webapps tomcat
在pom.xml文件中修改打包方式爲war包

添加tomcat的springboot-starter

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>

添加SpringBootServletInitializer配置類

public class ServletInitializer extends SpringBootServletInitializer {

@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(GmApplication.class);
}
}

使用maven的 clean 及package命令生成war包

修改war包名爲簡短的名字,因爲此時的項目名即爲war包名,不再受你在application.yml中的配置了,並且端口號也是tomcat的端口號,也不再受我們的配置,我就改war包爲gm.war
打開tomcat的端口號58080

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

重啓防火牆

firewall-cmd --reload

輸入xxx.xxx.xxx.xxxx:58080/gm訪問首頁
使用阿里雲的注意開啓安全組58080

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章